2010-04-28 5 views
2

(Correction: les contrôleurs de vue ne sont pas auto-redimensionnement au lieu de ne pas auto-rotation.)Voir contrôleurs à l'intérieur contrôleur de barre d'onglets non redimensionnement automatique sur la rotation

Dans une application iPad, j'ai cinq vue régulière contrôleurs (pas les contrôleurs de navigation ou quelque chose comme ça) dans un contrôleur de barre d'onglets. Le contrôleur de barre d'onglets est simplement un UITabBarController simple déclaré dans le délégué de l'application.

Tous les contrôleurs de vue renvoient YES dans la méthode shouldAutorotateToInterfaceOrientation.

Sur le simulateur et le périphérique, en rotation, la barre d'onglets et le contrôleur de vue en cours tournent mais le contrôleur de vue actuellement sélectionné (appelez-le A) ne se redimensionne pas correctement. Il garde sa largeur et sa hauteur de portrait (mais il est pivoté).

Si je passe à un autre contrôleur B, puis à A (sans faire à nouveau pivoter le périphérique), A apparaît correctement redimensionné.

Cela se produit avec l'un des cinq contrôleurs de vue

Pourquoi ne pas le contrôleur de vue actuellement sélectionné redimensionne immédiatement la rotation et comment puis-je résoudre ce problème?

Merci.

Répondre

7

Vous devez ajouter:

self.view.autoresizesSubviews = YES; 
self.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; 

Pour chaque méthode viewDidLoad des sous-viewcontrollers de votre contrôleur TabBar.

+0

Merci, je vais essayer et vous le faire savoir. – Padawan

+0

Génial! Ça marche! Je vous remercie! – Padawan

Questions connexes