Android build Layout для всех устройств
Можно построить макет (например, меню), который будет использовать систему координат pt
Мне нужно построить меню для игры, и мне нужно установить все поля на одинаковые позиции на каждом размере экрана
если экран будет большим, он должен масштабировать все на макете и то же на маленьком экране
как это:
Можете ли вы привести пример для этого?
2 ответа
Ниже приведен список каталогов ресурсов в приложении, которое предоставляет различные схемы компоновки для разных размеров экрана и различные растровые рисунки для экранов средней, высокой и очень высокой плотности.
res/layout/my_layout.xml // layout for normal screen size ("default")
res/layout-small/my_layout.xml // layout for small screen size
res/layout-large/my_layout.xml // layout for large screen size
res/layout-xlarge/my_layout.xml // layout for extra large screen size
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation
res/drawable-mdpi/my_icon.png // bitmap for medium density
res/drawable-hdpi/my_icon.png // bitmap for high density
res/drawable-xhdpi/my_icon.png // bitmap for extra high density
Это было взято с http://developer.android.com/guide/practices/screens_support.html
Если вы сортируете свои xml-файлы таким образом, Android сам определяет, какой файл выбрать в зависимости от размера экрана устройства.
При разработке желаемого макета вы можете выбрать Относительный макет, который обычно придерживается его атрибутов, таких как alignParentBottom
, alignParentTop
, alignParentRight
, alignParentLeft
назвать несколько.
Я надеюсь, что это решит вашу проблему, хотя мне не ясно, о чем вы говорите, когда говорите "система координат pt"
Создайте изображение с помощью 9-патча, поэтому нет необходимости сохранять изображения с разной плотностью, например, hdpi, mdpi и т. д., оно будет регулироваться с контролем при определении размера или вы можете сохранять изображения с разным размером в hdpi, mpdi с тем же именем и по времени выполнения в устройстве он получит соответствующие изображения в соответствии с доступной плотностью
редактировать
ссылки на 9-патч
http://developer.android.com/guide/developing/tools/draw9patch.html
http://android10.org/index.php/articlesother/279-draw-9-patch-tutorial
http://www.androiddom.com/2011/05/android-9-patch-image-tutorial.html