iOS. Orientación de la interfaz al inicio.
Tengo una aplicación que admite tanto el modo retrato como el modo paisaje.
Entonces en Info.plist / Configuración del proyecto, especifico ambas orientaciones.
En mi UIViewController anulo supportedInterfaceOrientations
para devolver .landscape
.
Pero cuando inicio mi aplicación, primero se muestra en modo retrato (con un diseño dañado) y luego una animación desagradable lo gira a modo paisaje (ver video).
También intenté anular application(_, supportedInterfaceOrientationsFor window)
con el mismo resultado.
Proyecto de muestra que muestra el problema:
https://s3.amazonaws.com/glazba/OrientationTest.zip
Video del problema de orientación:
davy.ai
Parece que puede haber un problema con la orientación de inicio de la aplicación. Una solución podría ser anular el método
preferredInterfaceOrientationForPresentation
en el controlador de vista para asegurarse de que se inicie en la orientación deseada. Por ejemplo:Además, se puede utilizar el método
viewWillLayoutSubviews
para actualizar el diseño de la vista cuando cambia la orientación. Por ejemplo:También es importante asegurarse de configurar correctamente las restricciones de auto-layout para manejar tanto las orientaciones de retrato como de paisaje.