Папки макета Android: макет, макет-порт, макет-земля

Я не уверен, что хорошо понял роль, которую играют несколько Android /res/layout.

layout: общие макеты

layout-port: макет для виджета, который должен измениться для портретной ориентации

layout-land: макет для виджета, который должен измениться для альбомной ориентации

Например, в примере Home в папках layout-port и layout-land имеется только один файл home.xml.

Я правильно понял?

Ответ 1

Если вы находитесь в ландшафтном или портретном режиме Android, сначала ищет файл макета в каталоге -port или -land, если он не найден, он возвращается к каталогу макета по умолчанию.

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

Ответ 2

Если вы поместите home.xml в папку layout-port, когда ваше устройство находится в портретной ориентации, оно будет использовать файл: layout-port/home.xml.

Если вы поместите home.xml в папку layout-land, когда ваше устройство в альбомной ориентации будет использовать файл: layout-land/home.xml.

Значение для разных режимов ориентации, таких как портрет и пейзаж... мы используем два файла home.xml; один в layout-port, а другой в layout-land. Если, с другой стороны, вы хотите использовать один и тот же файл макета для обоих, вы можете просто положить home.xml в папку layout и удалить его из layout-land и layout-port.

Ответ 3

Создать папку в папке res layout-land или layout-port

layout-port: макет для виджета, который должен измениться для портретной ориентации

layout-land: макет для виджета, который должен измениться для альбомной ориентации