Question

app iPad affiche Mon un film en plein écran en utilisant la classe MPMoviePlayerViewController pratique. Je vous présente comme ceci:

 [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 lors de la rotation de l'utilisateur l'iPad lors de la lecture de film:

1- L'IPAD est dans une orientation verticale. Mon point de vue est verticale. 2- L'utilisateur commence le film en orientation verticale. Le joueur est vertical. 3- L'utilisateur fait pivoter l'iPad à l'orientation horizontale. 4- Le joueur passe à son orientation horizontale. jusqu'ici tout va bien. 5- Le film s'arrête, le joueur est rejeté, mon reparaît, l'iPad est toujours horizontale, mais mon avis est resté dans l'orientation verticale était à l'étape 1. Maintenant, il semble sur le côté.

Bien sûr, si l'utilisateur tourne alors l'iPad, il est de retour à la normale. Mon point de vue tourne alors normalement lors de la rotation iPad.

Quelqu'un at-il jamais rencontre qui? Une solution facile?

Merci.

Était-ce utile?

La solution

Je l'ai rencontré ce de nombreuses fois et il semble être un bug d'Apple (et ai signalé comme tel).

La seule façon (je l'ai trouvé) autour est d'écouter les notifications de UIDeviceOrientationDidChangeNotification et UIApplicationDidChangeStatusBarOrientationNotification. Utilisez l'horodatage relatif à ces notifications; si elles se produisent à la fois dans une seconde de l'autre, vous pouvez être sûr que le changement de barre d'état est le résultat des orientations de commutation utilisateur et pas le support SDK changer l'orientation de la barre d'état. Puis, quand le film est terminé, vous pouvez dire à votre contrôleur de vue qu'il doit tourner au paysage.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top