He visto referencias para poder especificar dos archivos xml de diseño separados para una actividad, uno para Retrato y otro para Paisaje. Sin embargo, no he encontrado ninguna información sobre cómo hacerlo. ¿Cómo especifico para cada actividad qué archivo xml es su diseño vertical y cuál es el diseño horizontal?
¿También es posible especificar diferentes diseños para diferentes tamaños de pantalla? Si es así, ¿cómo se hace?
android
orientation
landscape
portrait
Jay Askren
fuente
fuente
Solo tiene que ponerlo en carpetas separadas con diferentes nombres dependiendo de la orientación y la resolución, el dispositivo seleccionará automáticamente la correcta para su configuración de pantalla
Más información aquí:
http://developer.android.com/guide/practices/screens_support.html
en "Calificadores del directorio de recursos para el tamaño y la densidad de la pantalla"
fuente
¡Para los amantes del ratón! Digo que haga clic derecho en la carpeta de recursos y
Add new resource file
, y de los calificadores disponibles, seleccioneorientation
:Pero aún así puede hacerlo manualmente diciendo, agregando la subcarpeta "layout-land" a
"Your-Project-Directory \ app \ src \ main \ res"
desde entonces, cualquier archivo layout.xml en esta subcarpeta solo funcionará en modo horizontal automáticamente .
Utilice "puerto de diseño" para el modo vertical.
fuente
Simplemente un recordatorio:
Elimine
orientation
delandroid:configChanges
atributo para la actividad en suxml
archivo de manifiesto si lo definió:fuente
La forma más rápida para Android Studio 3.xx y Android Studio 4.xx
1.Vaya a la pestaña de diseño del diseño de la actividad.
2.En la parte superior debe presionar el botón de orientación para vista previa, hay una opción para crear un diseño horizontal (ver imagen), se creará una nueva carpeta como su archivo de diseño xml para esa orientación particular
fuente
Creo que la forma más fácil en las últimas versiones de Android es ir al modo de diseño de un XML (no texto).
Luego, desde el menú, seleccione la opción - Crear variación de paisaje. Esto creará un xml horizontal sin ningún problema en unos segundos. La última versión de Android Studio le permite crear una vista horizontal de inmediato.
Espero que esto funcione para ti.
fuente
Cree un nuevo directorio
layout-land
, luego cree unxml
archivo con el mismo nombrelayout-land
que ellayout
directorio y alinee allí su contenido para el modo horizontal.Tenga en cuenta que la identificación del contenido en ambos
xml
es la misma.fuente
La última línea a continuación es un ejemplo para aplicar dos cuantificadores: horizontal y pantalla de ancho más pequeño (600dp). Actualice 600dp con los que necesita.
Lo anterior también se aplica a los dimens
Una métrica útil del dispositivo: https://material.io/tools/devices/
fuente
O usa esto:
fuente
Usando Android Studio 3.4.1, ya no crea unalayout-land
carpeta . Creará una carpeta y juntará dos archivos de diseño.fuente