Как я могу создать один макет для пейзажа и один для портрета? Я хочу принять дополнительную ширину и сохранить вертикальное пространство, когда пользователь поворачивает телефон боком.
Android: альтернативный макет xml для ландшафтного режима
Ответ 1
По умолчанию макеты в /res/layout
применяются как к портрету, так и к ландшафту.
Если у вас есть, например,
/res/layout/main.xml
вы можете добавить в него новую папку /res/layout-land
, скопировать main.xml
и внести необходимые настройки.
См. также http://www.androidpeople.com/android-portrait-amp-landscape-differeent-layouts и http://www.devx.com/wireless/Article/40792/1954 для некоторых дополнительных параметров.
Ответ 2
В текущей версии Android Studio (v1.0.2) вы можете просто добавить ландшафтный макет, нажав на кнопку в визуальном редакторе, показанном на скриншоте ниже. Выберите "Создать ландшафтную вариацию"
Ответ 3
Макеты в /res/layout применяются как к портрету, так и к пейзажу, если вы не указали иначе. Предположим, что у нас есть /res/layout/home.xml для нашей домашней страницы, и мы хотим, чтобы она выглядела по-разному в двух типах макетов.
- создать папку /res/layout -land (здесь вы сохраните свои настройки с учетом ландшафта)
- copy home.xml there
- внести необходимые изменения в него
Ответ 4
Вы можете сгруппировать свой конкретный макет в правильной структуре папок следующим образом.
Макет-земля-target_version
т
layout-land-19//target KitKat
Аналогичным образом вы можете создавать свои макеты.
Надеюсь, это поможет вам
Ответ 5
Самый быстрый способ для Android Studio 3.xx
1. Перейдите на вкладку "Дизайн" макета упражнения.
2.Вверху вы должны нажать на кнопку ориентации для предварительного просмотра, есть опция для создания макета ландшафта (проверьте изображение), новая папка будет создана как файл макета XML для этой конкретной ориентации.