Autorotate com um UINavigationController
-
10-07-2019 - |
Pergunta
Estou um pouco incerto sobre como vistas de rotação que estão sentados em uma UINavigationController.
Eu tenho substituído o objeto UINavigationController com um dos meus próprios que substituições:
- (void) didRotateFromInterfaceOrientation: (UIInterfaceOrientation) fromInterfaceOrientation {return SIM; }
Eu tenho um ponto de vista sobre a pilha no controlador e que a visão é carregado de um xib com dois pontos de vista nele. Eu quero mudar de retrato para paisagem. Normalmente eu iria lidar com isso alterando a vista de dentro dos arquivos nib do próprio ponto de vista. Eu tenho que implementar o código de rotação dentro do controlador de navegação ou apenas dentro do meu código de vista?
- (void) willAnimateFirstHalfOfRotationToInterfaceOrientation: (UIInterfaceOrientation) toInterfaceOrientation Duração: (NSTimeInterval) duração
Esse código willAnimate é o que eu estou acostumado a usar na própria opinião, mas eu ainda não estou vendo a vista a ser mudado, e eu estou pensando que pode ser que eu preciso acessar a vista na NavigationController e mudar isso, ou até mesmo substituir o mesmo método no controlador de navegação e fazer meu ponto de vista comutação lá.
Todas as sugestões? Eu nunca realmente fez isso antes e só descobri as TabViewControllers e NavigationControllers são ambos modo retrato somente por padrão.
Solução
Acontece que não era possível mudar o ponto de vista porque eu estava tentando alterações a RootView no controlador de navegação. Eu tenho em torno deste, colocando meu próprio controlador de vista pseudo raiz que nunca é visto no local raiz na pilha de navegação. I cancelou alguns dos controles de navegação para explicar isso para a funcionalidade continuaria o mesmo e eu seria capaz de mudar meu ponto de vista raiz percebida desejado como eu precisava.
Um começo na direção certa pode ser encontrado neste link:
http://starterstep.wordpress.com/2009/03 / 05 / mudando-a-UINavigationController 's-raiz-visão-controlador /