Управление макетами Android должно быть лучше - PullRequest
6 голосов
/ 21 октября 2010

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

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

Возможно, мое невежество отображается какдовольно новый разработчик, но должен быть лучший способ!

Существуют ли какие-либо инструменты для помощи с макетами Android?

Спасибо

Ответы [ 4 ]

8 голосов
/ 21 октября 2010

Вам не нужно , нужно , чтобы иметь столько разметок. Создавайте столько, сколько вам нужно, и никогда не используйте абсолютные значения, дополнительно старайтесь, чтобы все выглядело хорошо, используя fill_parent и wrap_content для ваших тегов layout_width & layout_height. Android выполняет большую часть работы самостоятельно. Эта статья содержит много полезной информации: Поддержка нескольких экранов

0 голосов
/ 22 октября 2010

вам просто нужно освоить правильное использование RelativeLayout и LinearLayout.Почти все мои макеты начнутся с относительного и будут иметь линейную вложенность.Как правило, я не использую LinearLayouts без установки высоты или ширины в 0 и использования атрибута weight, чтобы все было одинакового размера.

0 голосов
/ 21 октября 2010

Встроенный в Eclipse «редактор» макетов показывает достаточно хороший пример того, как выглядит макет.Я предполагаю, что вы пишете свое приложение в Eclipse.Если нет, я очень рекомендую это.Хотя это и не идеально, это лучшая среда, которую я нашел.

0 голосов
/ 21 октября 2010

Это приложение может оказаться полезным для разработки макетов:

http://www.droiddraw.org/

Кроме того, если вы не укажете макет для каждого поворота, Android будет использовать один - заразить его.можно использовать один для всего.Если вы используете фиксированные значения, это делает это намного сложнее.Попробуйте использовать fill_parent и wrap_content, ваш android позаботится о масштабировании вида для каждого типа экрана и поворота тоже.

В качестве подсказки не забудьте указать:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">

вышеваш относительный или линейный макет, и:

</ScrollView>

в конце - таким образом, если представление не помещается на экране (то есть, слишком много контента), оно позволит пользователю прокручивать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...