2009-06-05 6 views
1

J'ai une application iphone, avec une vue (bien multiple mais disons un à la fois). La vue est très simple juste quelques champs de texte et des images là-bas. J'ai mis les attributs de redimensionnement automatique pour ces contrôles afin qu'ils sachent qu'ils doivent être centrés, quelle que soit l'orientation. Il n'y a pas de code qui les déplace ou quoi que ce soit, tout est dans IB.Comment faire pour redimensionner correctement une application iphone sur les changements d'orientation?

Les vues ne se réorientent correctement que si je passe en mode paysage dans la vue principale, puis que je passe aux autres vues. Si je vais à n'importe quelle vue sur le portrait et que j'essaie ensuite d'aller en mode paysage, l'iphone effectue l'animation pour la rotation, mais mes contrôles ne semblent pas bouger au bon endroit. Quand je teste l'orientation dans IB, il semble réorienter correctement.

Pourquoi cela se produit-il? Comment puis-je le réparer?

Répondre

1

Je trouve que je dois mettre réinitialiser le cadre de mon point de vue principal changement d'orientation:

CGRect mainViewFrame = CGRectMake(0.0, 0.0, 320, 480); 
[self.view setFrame:mainViewFrame]; 
+0

ok je vais essayer quand je rentre à la maison ce soir. Est-ce que je fais cela quand je détecte un changement d'orientation? – fnCzar

+0

yeap qui a fonctionné. Merci beaucoup pour la réponse rapide! – fnCzar