Mon application pour iPad affiche un film en plein écran à l'aide de la classe pratique MPMoviePlayerViewController
. Je vous présente comme ceci:Affichage de l'iPad dans une orientation incorrecte après le rejet de la communicationMoviePlayerViewControllerAnimated
[self.hostController presentMoviePlayerViewControllerAnimated:playerViewController];
Et plus tard, lorsque le message indique que le jeu est fait, je rejette comme ceci:
[self.hostController dismissMoviePlayerViewControllerAnimated];
Il fonctionne très bien, sauf lorsque l'utilisateur fait pivoter l'iPad lors de la lecture de film :
1- L'iPad est dans l'orientation verticale. Ma vue est verticale. 2- L'utilisateur démarre le film en orientation verticale. Le joueur est vertical. 3- L'utilisateur fait pivoter l'iPad à l'horizontale. 4- Le lecteur passe à son orientation horizontale. jusqu'ici tout va bien. 5- Le film s'arrête, le joueur est renvoyé, mon réapparaît, l'iPad est toujours horizontal, mais mon point de vue est resté dans l'orientation verticale qui était à l'étape 1. Maintenant, il regarde de travers.
Bien sûr, si l'utilisateur fait ensuite pivoter l'iPad, il revient à la normale. Ma vue pivote alors normalement lorsque l'iPad tourne.
Quelqu'un at-il déjà rencontré cela? Une solution facile?
Merci.
Dans votre exemple, vous devriez remarquer que votre vue est dans un paysage, mais formatée pour le portrait, et que la barre d'état est en position portrait. Tout ce que vous avez à faire est d'appeler '[[UIApplication sharedApplication] setStatusBarOrientation: trueOrientation]' (landscape, dans cet exemple), et votre contrôleur de vue devrait faire le reste. – Jason
Bien ça marche. Merci beaucoup. –