2010-08-18 9 views
0

J'ai une sous-classe de UITabBarController que j'utilise pour que je puisse tourner pour utiliser mon application en mode paysage.UITabBarController avec des vues portrait/paysage

Comment procéder pour faire pivoter mon interface utilisateur et faire en sorte que chaque contrôleur de vue utilise une vue paysage xib?

J'ai toujours juste écrit des applications avant où retourner YES pour shouldAutorotate ... le gère automatiquement pour moi ... ce n'est pas le cas ici, maintenant que j'utilise une vue personnalisée.

Merci.

Répondre

1

Vous n'avez pas besoin de sous-classer UITabBarController pour obtenir le comportement d'autorotation. Au lieu de cela, vous devez faire en sorte que TOUS les UIViewControllers qui apparaissent dans votre UITabBarController renvoient YES pour shouldAutorotateToInterfaceOrientation :. Si ce n'est pas le cas, le UITabBarController ne sera pas autoroté. Comme pour la vue personnalisée, elle est associée à un UIViewController, n'est-ce pas?

Si c'est le cas, alors si votre vue personnalisée implémente layoutSubviews en utilisant les limites d'affichage actuelles pour disposer toutes les sous-vues, elle doit également effectuer une autorotation correcte.

+0

J'ai essayé de régler toutes mes vues pour retourner YES, mais cela n'a pas semblé affecter la rotation automatique ... Qu'est-ce que layoutSubviews? – joec

+0

Juste pour clarifier, avez-vous défini les vues pour retourner OUI, ou leurs contrôleurs de vue? Les vues ne seront pas demandées, seuls les contrôleurs de vue le seront. –

+0

Je définis les contrôleurs de vue pour retourner YES. Comment utiliser layoutSubviews pour mettre en page les sous-vues, en utilisant un xib? Merci – joec

Questions connexes