2010-12-07 26 views
0

Je crée un MovieController personnalisé en utilisant MPMovieController comme base. Je peux passer la vidéo à plein écran en appelantMPMoviePlayerController ne répond pas à setFullscreen = NO

_[moviePlayer setFullscreen:YES animated:YES];_ 

L'appel de la même fonction ([movieplayer setFullscreen: NO animé: OUI];) pour amener le film-joueur à l'état d'origine (à savoir quand appuyez sur le bouton Terminé) ne fonctionne pas.

Comme alternative, j'ai aussi essayé de -

a) écouter MPMoviePlayerDidExitFullscreenNotification et appelant moviePlayBackDidFinish: fonction à la suite de cela.

b) afficher ma notification personnalisée à l'intérieur « Terminé » fonction à l'aide de cette -

NSDictionary *thisDictionary = [NSDictionary dictionaryWithObject:[NSNumber numberWithInt:MPMovieFinishReasonUserExited] forKey:MPMoviePlayerPlaybackDidFinishReasonUserInfoKey]; 
[[NSNotificationCenter defaultCenter] postNotificationName:MPMoviePlayerDidExitFullscreenNotification object:moviePlayer userInfo:thisDictionary]; 

Mais dans tous ces cas, le point de vue film joueur ne revient pas à son état d'origine.

Aide S'il vous plaît.

Merci!

Répondre

0

Vous devez enregistrer une notification pour l'événement. Lorsque vous vous préparez pour lire la vidéo, faire comme ce

[[NSNotificationCenter defaultCenter] addObserver:self 
         selector:@selector(moviePlayBackDidFinish:) 
         name:MPMoviePlayerPlaybackDidFinishNotification 
         object:nil]; 

et dans votre sélecteur de moviePlayBackDidFinish, faites comme ce

[[UIApplication sharedApplication] setStatusBarHidden:YES]; 
    [[NSNotificationCenter defaultCenter] removeObserver:self name:MPMoviePlayerPlaybackDidFinishNotification 
     object:nil]; 


[self dismissModalViewControllerAnimated:YES];