2010-08-11 33 views
0

J'ai regardé partout sur le réseau en essayant de comprendre comment obtenir les limites en fonction de l'orientation. Les notifications fonctionnent bien, mais que je reçois les limites de la vue via:Problèmes liés à la rotation

CGRect cgRect = self.view.bounds; 

qui retourne {0, 0}, {320, 460} qui est correct, mais lorsque le dispositif est mis en rotation, il retourne la même CGRect, où j'attendais des valeurs complètement différentes.

J'ai essayé d'utiliser la propriété autoresizeSubviews sur self.view mais cela ne change pas. Je fais tout cela en code btw, pas de nibs, donc la barre de navigation ne bouge pas non plus. J'utilise simplement la notification UIDeviceOrientationDidChangeNotification qui répond correctement.

Répondre

2

trouvé la meilleure façon de régler cette est de vous inscrire pour les notifications de changement d'orientation de l'appareil, puis:.

UIDeviceOrientation deviceOrientation = [UIDevice currentDevice].orientation; 

Retournera quelle orientation l'appareil est en De cela, vous pouvez les calculs appropriés pour afficher la vue