MPMoviePlayerController против MPMoviePlayerViewController - PullRequest
9 голосов
/ 30 октября 2010

Я новичок в разработке для iPhone.Просто интересно, в чем разница между MPMoviePlayerController и MPMoviePlayerViewController.Кроме того, в целом, в чем разница между контроллером и контроллером представления?Я знаю, что вы используете контроллер для создания представления (как в MPMoviePlayerController.view), так что же создает ViewController?

Ответы [ 2 ]

20 голосов
/ 30 октября 2010

MPMoviePlayerController - это просто проигрыватель фильмов, он позволяет воспроизводить фильмы на iPhone, а MPMoviePlayerViewController - это подкласс фактического контроллера представления, который обеспечивает представление MPMoviePlayerController ... в виде документации на apple ставит «Экземпляр MPMoviePlayerController или проигрыватель фильмов управляет воспроизведением фильма из файла или сетевого потока. Воспроизведение происходит либо в полноэкранном режиме, либо в пользовательском представлении, которое воспроизводится проигрывателем фильмов. Вы можете включить представление в собственные иерархии представлений или используйте объект MPMoviePlayerViewController для управления презентацией. "

Нет никакого отношения между viewControler и контроллером, этот класс просто называется MPMoviePlayerController, потому что он дает вам контроль над проигрывателем фильмов. На самом деле раньше (я думаю, 4.0) не было никакого контроллера просмотра и только проигрывателя фильмов, позже Apple решила также включить контроллер просмотра проигрывателя фильмов.

14 голосов
/ 29 апреля 2011

Zaius,

Проще говоря, MPMoviePlayerViewController отображает фильм / видео, используя MPMoviePlayerController.

, следовательно, MPMoviePlayerController - это свойство в MPMoviePlayerViewController, которое выможет получить доступ.

MPMoviePlayerViewController.moviePlayer - это свойство, которое вы использовали бы для доступа к MPMoviePlayerController свойствам.

Надеюсь, что любой, кто нажмет эту ветку, найдет это полезным!

Пример:

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