Definir apenas a orientação do teclado (iOS 6)
meu aplicativo tem funcionado bem até que eu tentei fazer algumas alterações usando o ios 6 SDK
O aplicativo é executado no modo retrato 99% do tempo. Isso foi restrito apenas permitindo que o modo portait esteja disponível no info.plist
Existe um controlador de visualização que precisa ser mostrado no modo paisagem. Isto é conseguido "manualmente" simplesmente girando a visão em 90 graus, assim:
self.view.transform = CGAffineTransformMakeRotation(3.14159/2);
Isso ainda funciona bem no iOS 6.
No entanto, esse controlador de visualização possui alguns campos de texto. Quando o usuário toca, mostra o teclado. Desde que eu só girou a visão (e nãona realidade mudou a orientação do dispositivo), o teclado sai em modo retrato, o que não é bom.
Nas versões anteriores do iOS, defini a orientação da barra de status como paisagem e, como subproduto, definiria o teclado como paisagem também, assim:
[[UIApplication sharedApplication] setStatusBarOrientation: UIInterfaceOrientationLandscapeRight animated:NO];
No entanto, isso parou de funcionar para o iOS 6.
Eu li um milhão de estouro de pilha tentando fazer com que isso funcione, mas ainda não tenho sorte.