Если вам нужен этот макет как Portrait, так и Landscape , тогда вы создадите жесткий код при его создании следующим образом: - Будет время, когда вам потребуется определить графический интерфейс приложения как в альбомной, так и в портретной ориентации (просто повернитетелефон).
К счастью, у каждого дроида есть встроенная функция определения типа макета.Вам нужно реализовать:
Создать два файла main.xml для макета в обоих случаях: альбомный и портретный.
Поместите эти дваmain.xml в ресурсах в соответствии с его типом:
/ res / layout-land / main.xml
/ res / layout-port / main.xml
Просто создайте и попробуйте графический интерфейс вашего приложения во время выполнения.
В случае, если вы хотите определить время, когда меняется тип макета, и вы хотите выполнить некоторые дополнительные работы в кодировании,Возможно, вы захотите выполнить следующие действия:
Добавить Android: configChanges = «direction» в AndroidManifest.xml
Определить изменение ориентации:
@ Переопределить
public void onConfigurationChanged(Configuration newConfig) {
Configuration c = getResources().getConfiguration();
if(c.orientation == Configuration.ORIENTATION_PORTRAIT ) {
// portrait
} else if(c.orientation == Configuration.ORIENTATION_LANDSCAPE ){
// landscape
} }
Подробности
Если вы хотите только портрет, то
AndroidManifest.xml, declare your Activity like so: <activity ... android:screenOrientation="portrait" .../>
Если вы хотите только пейзаж, то
AndroidManifest.xml, declare your Activity like so: <activity ... android:screenOrientation="landscape" .../>
Если вы хотите большеинформация, пожалуйста, перейдите по этим ссылкам
http://developer.android.com/resources/articles/faster-screen-orientation-change.html
http://developer.android.com/guide/topics/manifest/activity-element.html#screen
StackOverflow search