En cierto punto de mi aplicación, me gustaría deshabilitar temporalmente la función de rotación, "bloquear" efectivamente la orientación en el código, similar a lo que hace el interruptor de bloqueo en el iPad en hardware.Cómo bloquear temporalmente la orientación de iPad/iPhone
que estoy haciendo actualmente:
[[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications]
y cuando he terminado, me llame:
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications]
Aunque todo esto parece funcionar, la documentación de la API indica que siempre debe haber una comienza seguido de final - y lo hago esencialmente a la inversa. ¿Hay una API más adecuada para manejar la "orientación de bloqueo"?
Thanks - works great! – Eric
Esto es lo que estoy haciendo ahora, pero hay una desventaja: Por ejemplo, si I ** 0. ** El dispositivo y el controlador de vista están en modo vertical. ** 1. ** gire el dispositivo para (digamos) el paisaje (el controlador de vista también gira), ** 2. ** rotación de bloqueo. ** 3. ** gire el dispositivo a retrato (el controlador de vista no gira en este caso, lo cual está bien). ** 4. ** luego desbloquee la rotación, luego el UIViewController no se actualiza a vertical. Tengo que rotarlo nuevamente para obtener el método anterior llamado :( – nacho4d
En ese caso, solo escuche la gravedad del acelerómetro y ajústese en consecuencia – slf