Я столкнулся с тем, что не знаю как заставить приложение масштабироваться под любые экраны.
Дайте советы как оптимальнее сделать приложение, которое будет хорошо масштабироваться под любой экран?
Нормальным ли считается вариант если делать под каждый размер отдельный лейаут-файл? По моему это не самый оптимальный вариант. Делать полностью динамический экран тоже сложно, по моему. Да и вообще дайте советы по тонкой настройке лейаут файла, я вот с чем столкнулся:
Пытался создать экран разделённый на 4 части: первая вторая и третья должны делить место в частях: 1я - 40%, 2я - 25%, 3я - 15%, 4я - 20%, заполнены они в основном картинками. Не думаю что есть смысл рассказывать как я пытался это реализовать, факт в том что элементы вели себя совсем не так как я ожидал, например в одной из частей экрана были 4 картинки с одинаковым разрешением и весом, 3 из них показывались нормально, а четвёртая сжималась сильнее остальных. Сами части вылазили на "чужое" место (пытался задавать размеры с помощью веса). Ну и ещё при изменении размера экрана (в основном в большую сторону) всё совсем было не так как ожидалось.
Дайте советы по этим пунктам: как лучше сделать нормально масштабируемое активити? Как заставить элементы адекватно делить пространство экрана? (мб фрагментами? пока не пробовал их использовать)
Дайте советы по дизайну.
Re: Дайте советы по дизайну.
Используй вес в паре с мач_парент
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.
Re: Дайте советы по дизайну.
Спасибо, это работает, но всёравно как то через раз, я не понимаю что то, что и когда я делаю не так.doter.ua писал(а):Используй вес в паре с мач_парент
Запустил студию, создал лейаут, вот код:
Код: Выделить всё
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="0.5"></LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="0.5"></LinearLayout>
</LinearLayout>