我正在使用MPMoviePlayer播放MP3文件,我希望在后台显示图像而不是默认的Quicktime徽标。
我发现了一种让图像覆盖播放器的方法,但问题是,您必须在图像外部点按才能显示播放器控件。当它们出现时,它们就在图像下面。
有人知道怎么做吗?
谢谢, 约翰
答案 0 :(得分:2)
不推荐使用backgroundColor,潜入私有View结构很危险。这对我很好:
UIImageView *coverImageView = [[UIImageView alloc] initWithImage:coverImage];
coverImageView.contentMode = UIViewContentModeScaleAspectFit;
coverImageView.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
coverImageView.frame = moviePlayerController.view.bounds;
[moviePlayerController.view addSubview:coverImageView];
答案 1 :(得分:0)
iPhone上的大多数应用都是由视图层次结构组成。您可以前往电影播放器的顶部根节点,递归地向下走下子视图,并将hidden
值设置为YES,直到找到正确的项目,然后在该项目下方插入UIImageView
。这样,控件保持在最顶层,仍然响应用户输入。
您运行的风险是Apple更改MPMoviePlayer
用户界面并随机播放视图层次结构,但您可能需要提前通知,并且可以修补您的应用以允许新的布局。
对于appstore应用程序来说这是否是犹太人存在一个问题,但许多当前的应用程序(尤其是相机/拍照者)正在这样做以摆脱标准的窗口元素。
答案 2 :(得分:0)
使用AVAudioPlayer并实现您自己的播放器UI。
答案 3 :(得分:0)
它可以检查这个
MPMoviePlayerController *moviePlayerController=[[MPMoviePlayerController alloc] initWithContentURL:theURL];
moviePlayerController.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Default.png"]];