2010-05-11 11 views
1

J'ai une vue qui montre un MPMoviePlayerViewController modalement. En le testant dans le simulateur d'iPad, il fonctionne bien au premier essai. Si je rejette la vidéo et affiche à nouveau la vue, le lecteur ne lit que l'audio, mais pas la vidéo.Test MPMoviePlayerViewController dans le simulateur d'iPad

Est-ce un simulateur bizarre ou est-ce que je fais quelque chose de mal? Voici mon code:

- (void)viewWillAppear:(BOOL)animated { 
    [super viewWillAppear:animated]; 
    MPMoviePlayerViewController* v = [[MPMoviePlayerViewController alloc] initWithContentURL:url]; 
    [[NSNotificationCenter defaultCenter] addObserver:self selector: @selector(playbackDidFinish:) name:MPMoviePlayerPlaybackDidFinishNotification object:v.moviePlayer]; 
    [self presentMoviePlayerViewControllerAnimated:v]; 
    [v release]; 
} 

-(void) playbackDidFinish:(NSNotification*)aNotification 
{ 
    MPMoviePlayerController *player = [aNotification object]; 
    [[NSNotificationCenter defaultCenter] removeObserver:self 
               name:MPMoviePlayerPlaybackDidFinishNotification 
               object:player]; 
    [player stop]; 
    [self dismissMoviePlayerViewControllerAnimated]; 
} 

Répondre

2

Au lieu de mettre le code pour créer un contrôleur de vue dans le viewWillAppear d'un autre contrôleur de vue, pourquoi ne pas simplement créer le MPMoviePlayerViewController directement? Généralement, les contrôleurs de vue sont créés ou affichés en réponse directe à certaines actions de l'utilisateur. A part cela, il n'y a rien de mal avec le code affiché. Je n'ai jamais eu aucun problème à lire des films dans le simulateur, mais j'ai créé le MPMoviePlayerViewController dans didSelectRow ou en réponse à un clic de bouton.

+0

Merci. Je veux afficher le MPMoviePlayerViewController en plein écran après avoir cliqué sur une icône de la barre d'onglets, c'est pourquoi j'utilise un autre contrôleur de vue. – hpique

+0

J'ai trouvé une vue pour créer MPMoviePlayerViewController en utilisant le délégué du contrôleur de la barre d'onglets. Merci! – hpique