iphone xcode ios8 orientation

iphone - iOS 8 orientación al revés, opción XCode habilitada, todavía no funciona



ios8 orientation (3)

Bueno, he descubierto el propósito de las opciones en la configuración del proyecto ... Dentro de las opciones, está diciendo "mi aplicación soporta estas orientaciones" y no "mi aplicación debe usar estas cuatro opciones" ... Entonces, en iPhone debe decir explícitamente que un ViewController particular es compatible con todas las orientaciones (la parte superior no forma parte de las orientaciones predeterminadas, por una razón que no sé) ... El código debe ser así para respaldar todas las orientaciones:

override func supportedInterfaceOrientations() -> Int{ return Int(UIInterfaceOrientationMask.All.rawValue) }

Tengo una aplicación universal que se está desarrollando en iOS8 (XCode 6.1.1). Soportará las 4 orientaciones (izquierda, derecha, retrato y al revés).

El problema es que, aunque en XCode las cuatro opciones para las orientaciones compatibles están marcadas, solo la izquierda, la derecha y el retrato funcionan correctamente. Entonces, ¿hay un error en XCode o iOS8? Mi info.plist muestra todas las orientaciones compatibles, pero cuando ejecuto la aplicación en el simulador o en el dispositivo, no se "voltea" la orientación cuando está boca abajo. (PD: es una aplicación individual, no tiene ningún controlador de navegación).

¡Gracias!

Cleverson


Con Swift 2.1, puede simplificar la respuesta de @Cleversou a:

override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask { return .All }

Con Swift 2.3

override var supportedInterfaceOrientations : UIInterfaceOrientationMask { return .all }


Si está ejecutando dentro de un controlador de navegación o un controlador de la barra de pestañas, deberá hacer lo mismo en su subclase o anular todas las instancias con una extensión:

extension UINavigationController { override public func supportedInterfaceOrientations() -> UIInterfaceOrientationMask { return .All } } extension UITabBarController { override public func supportedInterfaceOrientations() -> UIInterfaceOrientationMask { return .All } }

Edición: a partir de Swift 3.0 / iOS 9 (y posiblemente antes) esto sería:

extension UINavigationController { override open var supportedInterfaceOrientations : UIInterfaceOrientationMask { return .all } } extension UITabBarController { override open var supportedInterfaceOrientations : UIInterfaceOrientationMask { return .all } }