2010-07-03 5 views
1

J'ai passé la dernière heure à essayer de comprendre pourquoi tous mes UIViewControllers ne reçoivent pas de notifications de changement d'orientation.Les UIViewControllers ne reçoivent pas de notifications d'orientation

J'ai un UIViewController sous-classé attaché à la fenêtre, qui crée en interne quelques autres UIViewControllers pour gérer de plus petites parties de l'écran qui sont réutilisées ailleurs dans l'application que je construis.

Le problème est que seul le UIViewController connecté à la fenêtre reçoit les notifications de changement d'orientation. Les autres UIViewControllers ne déclenchent pas leurs méthodes - (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation duration:(NSTimeInterval)duration.

Je suppose que c'est le comportement attendu, et je n'arrive pas à trouver quelque chose qui le mentionne dans les docs.

Y at-il un moyen de s'assurer que tous les UIViewControllers actifs obtiennent des changements d'orientation? Ou le contrôleur de vue parent doit-il dire à ses enfants quand des changements se produisent?

Cheers.

Répondre

0

Tous vos contrôleurs de vue renvoient-ils YES à shouldAutorotateToInterfaceOrientation:? Si c'est le cas, je suggère de passer les messages d'orientation de l'interface du parent aux enfants viewControllers, comme vous l'avez suggéré.

Je l'ai fait avant et n'ai eu aucun problème avec cette approche jusqu'à présent.

Questions connexes