изменить цвет фона видео iPad / iPhone - PullRequest
3 голосов
/ 23 июля 2011

с помощью следующего метода я играю видео: (с использованием #import framework)

MPMoviePlayerController * player;

-(IBAction) playMovie: (NSString*) videoName ViedeoType:(NSString*) videoType{

  ViewVideoSubview.alpha = 0;

  NSString *url = [[NSBundle mainBundle] 
                   pathForResource:videoName 
                   ofType:videoType];

  player = [[MPMoviePlayerController alloc] initWithContentURL:[NSURL fileURLWithPath:url]];
  [ViewVideoSubview addSubview:player.view];
  ....
  ....
}

и видео воспроизводится нормально.Мне интересно, возможно ли изменить цвет фона видео с черного на белый?

видео воспроизводится в черном прямоугольнике:

enter image description here

Я пробовал что-то вроде player.backgroundView.alpha = 0;, но это не сработало.

РЕДАКТИРОВАТЬ:

Я также попытался:

[[player backgroundView] setBackgroundColor:[UIColor whiteColor]];

, и это меняет цвет фона, но область между видео и проигрывателем. View

Ответы [ 3 ]

0 голосов
/ 23 июля 2011

moviePlayerViewController.view.backgroundColor = [UIColor blackColor]

UPD: единственное, что я могу порекомендовать, это переключиться на низкоуровневую AV-основу.Вы сможете контролировать все слои, которые вам нужны.

0 голосов
/ 06 июня 2012

Вы можете изменить цвет фона, после добавления playerController в текущую иерархию представлений вставьте следующий код:

NSArray *subViews = [[[self playerController] view] subviews];
for(UIView *v in subViews)
{
    if([v respondsToSelector:@selector(setBackgroundColor:)])
    {
        [v setBackgroundColor:[UIColor whiteColor]];
    }
}
0 голосов
/ 23 июля 2011

Ваш вопрос немного двусмысленный, поэтому я не уверен, совпадает ли мой ответ ...

Чтобы изменить цвет видеоизображения, которое отображается, пока фильм еще не полностью загружен / не воспроизводится:

player.view.backgroundColor = [UIColor whiteColor];

Примечание : Невозможно изменить часть кодированных видеоданных без перекодирования самого видео.

...