it-swarm.com.ru

Android: альтернативный макет XML для ландшафтного режима

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

117
Bryan Field

По умолчанию макеты в /res/layout применяются как к книжной, так и к альбомной ориентации.

Если у вас есть, например,

/res/layout/main.xml

вы можете добавить новую папку /res/layout-land, скопировать в нее main.xml и внести необходимые изменения.

orientation

См. Также http://www.androidpeople.com/Android-portrait-amp-landscape-differeent-layouts и http://www.devx.com/wireless/Article/40792/1954 для некоторых других вариантов.

209
marapet

В текущей версии Android Studio (v1.0.2) вы можете просто добавить альбомную планировку, нажав кнопку в визуальном редакторе, показанном на снимке экрана ниже. Выберите "Создать вариант ландшафта"

Android Studio add landscape layout

68
Reefwing

Макеты в/res/layout применяются как к книжной, так и к альбомной ориентации, если не указано иное. Предположим, у нас есть /res/layout/home.xml для нашей домашней страницы, и мы хотим, чтобы она выглядела по-разному в двух типах макетов.

  1. создайте папку/res/layout-land (здесь вы будете сохранять ваши макеты с измененным ландшафтом)
  2. скопируйте туда home.xml
  3. внести необходимые изменения в него

Источник

42
Dalmas

Вы можете сгруппировать ваш конкретный макет под правильную структуру папок следующим образом.

макета-земля-target_version

т.е.

layout-land-19 // target KitKat

точно так же вы можете создавать свои макеты.

Надеюсь, что это поможет вам

2
Umanda