2010-07-13 11 views
7

J'ai une vidéo dans mon application iPad, mais je ne veux pas qu'elle puisse aller en plein écran. Cependant, je souhaite potentiellement que l'utilisateur puisse accéder à la partie de la vidéo qu'il souhaite voir. Autant que je sache, il n'y a que trois options pour les contrôles que vous donnez à l'utilisateur: Aucun, intégré ou plein écran.MPMoviePlayerController, ne pas autoriser le plein écran mais autoriser la navigation dans le clip?

Aucune donne aucun contrôle à l'utilisateur. Embedded et Fullscreen donnent fondamentalement à l'utilisation le même niveau de contrôle mais commencent juste dans différents états.

Fondamentalement ce que je veux est intégré avec le commutateur à l'option plein écran retiré.

Quelqu'un sait si c'est possible? Merci

Répondre

2

Vous pouvez définir le style de contrôles sur «Aucun», puis ajouter votre propre affichage personnalisé pour naviguer à l'aide d'un UISlider (j'ai déjà fait cela par le passé). MPMoviePlayerController adhère au protocole MPMediaPlayback, donc vous prenez le temps de lecture total du film, le multipliez par la valeur UISlider (quand il change), puis ajustez la position de la tête de lecture du film.

Vous aurez également besoin d'un NSTimer ou d'un KVO pour surveiller le temps de lecture afin de pouvoir mettre à jour l'élément UI du curseur en temps réel.

+1

KVO ne fonctionnera pas ici, currentPlaybackTime n'est pas conforme à KVO et ne générera aucune notification. NSTimer semble la seule solution en ce moment. – KPM

+0

Merci pour le commentaire. En y repensant, cela a du sens - le temps de lecture change constamment, ce qui crée un déluge d'événements. – makdad