2010-11-27 6 views
11

J'ai un MPMoviePlayerController où je charge une vidéo à partir d'une URL. Dans iOS 3.2.2, la vidéo a commencé à être téléchargée lorsque je l'ai ajoutée à une vue, mais elle n'a pas été lue jusqu'à ce que j'appuie sur le bouton de lecture (ce que je veux). Cependant, depuis iOS 4.2.1, il a commencé à se comporter différemment; la vidéo commence à télécharger et joue automatiquement.empêche MPMoviePlayerController de jouer automatiquement dans iOS 4.2.1

Voilà comment je charge mon MPMoviePlayerController:

MPMoviePlayerController *player = [[MPMoviePlayerController alloc] 
    initWithContentURL:[NSURL URLWithString:theVideo.fileUrl]]; 
player.view.frame = articleVideoFrame; 

[mainView addSubview:player.view]; 

J'ai même essayé d'effectuer une [player pause]; après la partie addSubview, mais il joue toujours automatiquement. Pourriez-vous m'aider avec celui-ci?

Répondre

41

L'a reçu! J'ai utilisé player.shouldAutoplay = NO; et cela a fait l'affaire. La documentation dit qu'il est par défaut YES, ce qui explique tout cela. Probablement en 3.2 par défaut était NO, mais a été commuté en 4.2.

+4

5 ans plus tard, cela m'a encore aidé. +1 –

+0

En utilisant Swift cela a fonctionné pour moi: 'player.shouldAutoplay = false' – Andrej

1

Je l'ai remarqué d'autres changements de comportement dans la lecture vidéo en 4.2.1 ... à savoir le lecteur vidéo ne devient pas visible jusqu'à ce qu'il commence à recevoir les données pour le film ...

Dans les versions précédentes utilisé pour arriver instantanément avec le texte "Chargement du film ..." en haut.

Parfois, le joueur est bloqué quand pas en mode plein écran, sans bouton disponible ou non Done répondre à des touches sur Pause et Zoom ...

je rencontre d'autres questions plus subtiles avec la lecture, mais Je ne peux pas isoler le problème pour l'instant ...

+1

Cela m'est toujours arrivé! Ma solution rapide-et-sale mettait un UILabel avec un fond noir et un texte blanc qui lit le "film de chargement" de la même taille que le joueur derrière le joueur. –