2013-04-11 3 views
0

Я пытаюсь добавить объект subview MPMoviePlayerViewController, его верхний бар перемещается немного вниз, но если я действительно представляю объект MPMoviePlayerViewController своим совершенством. ? Я не знаю, что происходит. Пожалуйста, помогите мне.Проблема MPMoviePlayerViewController

если я на добавление в подвид я пишу:

 self.moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL  URLWithString:self.filePath]]; 
     [self.moviePlayer.view setFrame:self.view.bounds]; 
     [self.view addSubview:self.moviePlayer.view]; 

так сверху по умолчанию делается кнопка и индикатор перемещается немного вниз. Пожалуйста, помогите мне, почему это происходит? и решение для этого.

+0

moviePlayer.view.frame = CGRectMake (0,0,0,0,320,0,480.0); – Buntylm

ответ

0

Попробуйте это:

self.moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL  URLWithString:self.filePath]]; 

CGRect frame = self.view.bounds; 
frame.origin.y -= 20; 
[self.moviePlayer.view setFrame:frame]; 
[self.view addSubview:self.moviePlayer.view]; 

MPMoviePlayerViewController вид кадра при условии, что она будет отображаться с строкой состояния видимой, но я предполагаю, что вы скрыли свой статус бар. Поэтому, когда вы добавляете вид MPMoviePlayerViewController, его frame.origin.y устанавливается в 20 (высота строки состояния).

+0

Awesome Dude :) Спасибо большое, его работа, но одна вещь, которую я не понимаю, это то, что я не скрываю свой статус-бар и все еще работаю. CGRect frame = self.view.bounds; frame.origin.y - = 20; [self.moviePlayer.view setFrame: frame]; – user2019279

+0

MPMoviePlayerViewController обычно отображается в полноэкранном режиме. Таким образом, его фрейм инициализируется как (0,20, screenWidth, screenWidth, screenHeight-20). Когда вы сбрасываете свой фрейм с помощью [self.moviePlayer.view setFrame: self.view.bounds], вы изменили размер, но не источник, поэтому его origin.y по-прежнему установлен на 20. – calampunay

1
MPMoviePlayerController* movieController = [[MPMoviePlayerController alloc] 
               initWithContentURL:url]; 

    movieController.view.frame = self.window.bounds; 
    movieController.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; 
    [self.window addSubview:movieController.view]; 

    [movieController prepareToPlay]; 
    [movieController setShouldAutoplay:NO]; 
Смежные вопросы