Pregunta

Hola, estoy tratando de hacer que mi diseño sea compatible con todos los tipos de pantalla de orientación (paisaje/retrato). Por eso estoy usando layout-land y layout-port.

Esto funciona para dispositivos que tienen solo 2 posiciones de orientación (paisaje y retrato) pero no funciona si giro un dispositivo que admite 4 posiciones de orientación (tierra a la izquierda/derecha, puerto al revés/alza). Está trabajando solo en la posición de tierra predeterminada, pero si giro el dispositivo en la otra posición del paisaje, Android elige el layout-port diseños en lugar de layout-land.

¿Cómo puedo resolver este problema en XML? ¿O la única solución es administrarme los cambios de orientación?

¿Fue útil?

Solución 4

Parece que la tierra de diseño funciona. El problema era que manejé el cambio de orientación por mí mismo y tomé solo 2 tipos de orientación.

(Administro la orientación solo para bajar el título de la aplicación y hacer que sea una pantalla completa en el paisaje ...)

Aunque gracias por sus respuestas

Otros consejos

Aquí notará que solo escucho el escenario para el evento StageOrientationEvent.orientation_change. Cuando el evento se dispara, hay cinco posibles orientaciones en las que puede estar el escenario: predeterminado, rotado a la izquierda, rotado a la derecha, al revés y desconocido.

http://www.unitedmindset.com/jonbcampos/2010/09/27/air-for-doid-screen-orientation/

No puedes hacer esto usando XML. Tienes que hacer programático. Para detectar el cambio de orientación, puede usar OrientationEventListener

Su TargetSDK tiene que ser 2.2 (cuando se introdujeron las orientaciones Reverselandselands y ReversePortrait ... bastante seguro de que estaba en 2.2) y su dispositivo tiene que soportar estas orientaciones. Por ejemplo, una tableta de Sony no irá a Reverselandscape, pero hará reverso

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top