1 votes

Test de MPMoviePlayerViewController dans le simulateur iPad

J'ai une vue qui affiche un MPMoviePlayerViewController modalement. Lorsque je le teste dans le simulateur de l'iPad, il fonctionne bien du premier coup. Si je rejette la vidéo et que je réaffiche la vue, le lecteur ne joue que l'audio, mais pas la vidéo.

Est-ce une bizarrerie du simulateur 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];
}

2voto

drawnonward Points 35444

Au lieu de mettre le code pour créer un contrôleur de vue dans le fichier viewWillAppear d'un autre contrôleur de vue, pourquoi ne pas simplement créer le fichier MPMoviePlayerViewController directement ? Habituellement, les contrôleurs de vue sont créés ou affichés en réponse directe à une action de l'utilisateur. À part cela, il n'y a rien d'anormal dans le code présenté. Je n'ai jamais eu de problème pour lire des films dans le simulateur, mais j'ai créé le fichier MPMoviePlayerViewController dans didSelectRow ou en réponse à un clic sur un bouton.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X