Гибкая Android-раскладка для нескольких размеров экрана / плотности - PullRequest
4 голосов
/ 12 января 2011

Я работаю над созданием карточной игры для Android.Я пытаюсь придумать макет, который позволит играть в игру на всех размерах и плотностях экрана.

Я прочитал: http://developer.android.com/guide/practices/screens_support.html

Однако я все еще не уверен влучший способ сделать это.

Для этой игры мне нужны карты, разложенные в ландшафтном режиме, в 5 столбцов.Над 5 колоннами есть места для дополнительных карточек.В этом отношении он очень похож на пасьянс ... но мне нужно только 5 столбцов вместо 7.

Какого размера изображения карты должны быть в ldpi, mdpi и hdpi?

Какой тип макета мне следует использовать (Табличный, Линейный, Относительный)?

Следует ли создавать разные макеты для экранов разных размеров (маленький, нормальный, большой)?

Какие примеры вы можете указать мне?

Ответы [ 2 ]

8 голосов
/ 22 февраля 2012

во-первых, извините, мой английский недостаточно хорош.Вы должны разделить свои ресурсы на несколько папок (в зависимости от размера экрана), например, сделать разные макеты из разных ресурсов.Вы можете сделать следующее:

1.drawable

-drawable-hdpi

-drawable-mdpi

-drawable-ldpi

2.layout

--layout-hdpi

--layout-mdpi

--layout-ldpi

настроить свой ресурс для каждого размера экрана, это делает ваше приложение применимымдля многих устройство.

0 голосов
/ 10 марта 2011

В документации по Android есть отличное руководство по этому вопросу:

Поддержка нескольких экранов

Они представляют обобщенные размеры и плотности и показывают, как различные ресурсы можно загружать динамическидля разных экранов.

Я новичок в Android сам, так что не поверьте мне на слово, но, я думаю, вы можете обойтись без одного макета для всех размеров экрана, и я думаю, что RelativeLayout будет работатьну (в большинстве случаев), особенно с чем-то таким сложным, как карточная игра.В основном я использовал LinearLayouts внутри RelativeLayouts, когда хотел выровнять кнопки / текст по горизонтали.

...