Question

J'ai deux UIViewControllers, « A » et « B », où « A » remplace le shouldAutorotateToInterfaceOrientation pour revenir OUI pour UIInterfaceOrientationPortrait, et retourne « B » OUI pour toutes les orientations. Dans mon exemple, « A » est le contrôleur de vue de la navigation racine, et je puis utiliser pushViewController pour « B ». Après cela, je tourner le dispositif dans le paysage, qui autorotates avec succès « B », puis (touche de retour ou par popViewController) Je pop « B » pour revenir à « A ».

Lorsque l'iPhone OS 3.1.3 ciblage, le rendement "A" à l'orientation portrait comme prévu. Lorsque l'iPhone OS 3.2 ciblage, j'ai deux effets secondaires:

  1. "A" est affiché dans le paysage.
  2. La barre de navigation ne met pas à jour même si est maintenant affiché « A ». La barre de navigation affiche toujours les éléments pour « B ». Seulement après avoir essayé de revenir en arrière / pop une fois de plus sera l'Animer la barre de navigation pour afficher les éléments pour « A ». Si je tente plutôt de pousser « B » à nouveau et revenir en arrière, je dois pop deux fois avant la animez barre de navigation pour afficher les éléments pour « A ». Au cours de ces « intermédiaires » pops la vue pour les restes « A » affiché.

Alors que des recherches sur cette question, je l'ai vu d'autres réponses suggérant d'effectuer la rotation manuelle ([UIDevice setOrientation] ou via une tranformation), mais cela ne veut pas aider à comprendre ce que le problème est, en particulier pourquoi il se comporte différemment entre les deux systèmes d'exploitation à.

Alors ma question est: doit tous mes UIViewControllers sur le soutien de UINavigationController exactement les mêmes orientations à l'avenir? Et sinon, il y a quelque chose que je dois faire pour se comporter comme il l'a fait pour OS 3.1.3?

Était-ce utile?

La solution

Il semblerait que les plus récents de OS nécessitent tous UIViewControllers dans la pile de UINavigationController pour soutenir le même ensemble d'orientations.

Autres conseils

J'ai le même problème et je l'ai trouvé la réponse sur ce lien: UINavigationController les problèmes de navigation en mode paysage un de mes contrôleurs de vue n'a pas été de retour sur OUI shouldAutorotateToInterfaceOrientation.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top