我有一个播放音频的MPMoviePlayerViewController。我想删除Quicktime徽标和/或向播放器添加自定义背景图像,但保留播放控件。我发誓我已经在iOS 5之前完成了这个,但我无法重新弄明白!我尝试过的事情:
- 将子视图添加到MPMoviePlayerViewController。将子视图放在播放控件上,不太好。
带有patternimage的moviePlayer的-setBackgroundColor。什么都不做。
整个MPMoviePlayerViewController上的-setView。正如预期的那样,播放控件和导航栏都消失了。我想这可行,但我需要手动重新创建所有播放控件,但我真的不愿意。
任何人都能解释一下吗?
答案 0 :(得分:8)
查看MPMoviePlayerController
属性backgroundView
。
来自MPMoviePlayerController Class Reference;
backgroundView
电影背后显示的可自定义视图 内容。 (只读)
@property(非原子,只读)UIView * backgroundView
讨论这个 view提供了支持内容,其中包含电影内容 被展示。如果需要,可以将子视图添加到背景视图中 显示自定义背景内容。
此视图是视图属性返回的视图层次结构的一部分。
可用性适用于iOS 3.2及更高版本。宣告进入 MPMoviePlayerController.h
尝试这样的事情(假设你的MPMoviePlayerController实例被称为moviePlayerController
):
patternView = [[UIView alloc] initWithFrame:self.view.bounds];
patternView.backgroundColor = [UIColor redColor];
[moviePlayerController.backgroundView addSubview:patternView];
[patternView release];
答案 1 :(得分:2)
直到iPhoneOS 3的答案是正确的。这在iOS 4和5中已经改变。
Apple现在向MPMoviePlayerViewController添加了一个readonly属性,暴露了一个MPMovieController。 MPMovieController有一个应该使用的backgroundView。
现在你想要做这样的事情:
patternView = [[UIView alloc] initWithFrame:self.view.bounds];
patternView.backgroundColor = [UIColor redColor];
[moviePlayerController.moviePlayer.backgroundView addSubview:patternView];
[patternView release];