2010-10-30 11 views
9

Sono nuovo nello sviluppo di iPhone. Mi chiedo quale sia la differenza tra MPMoviePlayerController e MPMoviePlayerViewController. Inoltre, più in generale, qual è la differenza tra un controller e un controller di visualizzazione? So che usi un controller per costruire una vista (come con MPMoviePlayerController.view), quindi cosa crea un ViewController?MPMoviePlayerController vs. MPMoviePlayerViewController

risposta

20

Il MPMoviePlayerController è solo un giocatore di film, fornisce un modo per riprodurre film su iPhone, un MPMoviePlayerViewController è un vero e proprio sottoclasse controller della vista che si prende cura della presentazione del MPMoviePlayerController ... la documentazione a apple lo mette "Un'istanza MPMoviePlayerController o un riproduttore di filmati gestisce la riproduzione di un film da un file o da un flusso di rete. La riproduzione avviene in modalità a schermo intero o in una visualizzazione personalizzata venduta dal riproduttore di filmati. nelle proprie gerarchie di visualizzazione o utilizzare un oggetto MPMoviePlayerViewController per gestire la presentazione. "

Non esiste alcuna relazione tra un viewControler e un controller, questa classe viene semplicemente denominata MPMoviePlayerController perché consente di controllare il lettore di film. In realtà prima (4.0 penso) non c'era il controller di visualizzazione e solo il lettore di film, in seguito Apple decise di incorporare anche il controller di visualizzazione del lettore di film.

+0

realtà MPMoviePlayerViewController è disponibile dopo iOS3.2 – ZYiOS

14

Zaius,

In termini più semplici, MPMoviePlayerViewController visualizza il film/video utilizzando la MPMoviePlayerController.

quindi, MPMoviePlayerController è una proprietà in MPMoviePlayerViewController a cui è possibile accedere.

MPMoviePlayerViewController.moviePlayer è la proprietà che si utilizzerà per accedere alle proprietà MPMoviePlayerController.

Spero che chiunque trovi questo thread lo ritenga utile!

Esempio:

MyMoviePlayerViewController * moviePlayerVC = [[MPMoviePlayerViewController alloc]initWithContentURL:movieURL]; 
moviePlayerVC.moviePlayer.allowsAirPlay = YES; 
Problemi correlati