2010-02-07 5 views
9

J'ai développé une application pour iPhone qui exécutait MPMoviePlayer (SDK pré 3.2) sans problème. Je sais que c'est une question de débutant, mais comment puis-je obtenir un film à jouer dans le nouveau MPMoviePlayerViewController. Je reçois seulement l'audio et souhaite apprendre le nouveau contrôleur de vue. J'ai transféré toute mon application sur iPad et tout le reste fonctionne bien, sauf pour la vidéo. Quelqu'un pourrait-il montrer un exemple en utilisant le contrôleur de film? Toute aide serait appréciée.Utilisation de MPMoviePlayerViewController dans SDK 3.2 pour iPad

Merci,

+0

se réfèrent à http://www.devx.com/wireless/Article/44642/ 1954 – Forrest

Répondre

19
NSURL* videoURL = [NSURL URLWithString:url]; 
MPMoviePlayerController moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL]; 
[moviePlayer prepareToPlay]; 
[moviePlayer play]; 
//For viewing partially..... 
[moviePlayer.view setFrame:CGRectMake(50, 200, (self.view.frame.size.width)-100 , 400)]; 
moviePlayer.view.backgroundColor = [UIColor grayColor]; 
[self.view addSubview:moviePlayer.view];  
+1

merci ... cela a fonctionné pour moi, – Biranchi

+1

cela fonctionne bien pour tous pourquoi pas pour moi ... il ne joue que l'audio pas de visuels sont là –

0

Je suis assez sûr que son cassé dans le simulateur à l'heure actuelle! J'obtiens le même comportement (pas de vidéo mais entendez l'audio) avec le dernier sdk et leur propre exemple de MPMoviePlayer avec la propre vidéo d'Apple qui jouera dans le simulateur d'iPad utilisant le safari ... Ainsi la vidéo finale joue sur simulator-ipad dans Safari une application utilisant la classe MpMoviePlayer. Bug ou fonctionnalité, vous décidez. (Je pense que c'est juste cassé). notes de version pour cette version ont beaucoup de changements en cours dans la classe MPMoviePlayer ...

3

Vous devez utiliser MPMoviePlayerViewController, non MPMoviePlayerController. Recherchez les documents pour MPMoviePlayerViewController.

2

changez cette ligne:

MPMoviePlayerController moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL]; 

à

MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL]; 

vous avez besoin du *

3

Essayez dans votre contrôleur de vue:

MPMoviePlayerViewController* theMoviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:videoURL]; 
[self presentMoviePlayerViewControllerAnimated:theMoviePlayer]; 

Cela devrait vous aider à démarrer, mais vérifiez la référence de classe MPMoviePlayerViewController pour plus d'informations.

2

Je me suis battu partout avec ceci - l'exemple de code MoviePlayer d'Apple ne lit pas la vidéo, seulement l'audio. Il m'a vraiment fallu des années pour comprendre qu'il était jouer de l'audio parce que l'échantillon vidéo de l'avion qu'ils fournissent n'a AUCUNE AUTRE VOIE !!! (Donc, je clique sur le bouton et ne reçois absolument rien.)

Merci pour toutes les suggestions ici. J'ai finalement trouvé https://developer.apple.com/library/ios/#qa/qa2010/qa1240.html et même c'est une solution obscure-ish.

Cela fonctionne: dans initAndPlayMovie après [Communiqué de mp]:

[[self.moviePlayer view] setFrame:[window bounds]];// size to fit parent view exactly 
[window addSubview:[self.moviePlayer view]]; 

Bon voyage et heureux voler :)

Questions connexes