MPMoviePlayer音频专辑封面

时间:2009-05-12 18:08:20

标签: iphone objective-c

我正在使用MPMoviePlayer播放MP3文件,我希望在后台显示图像而不是默认的Quicktime徽标。

我发现了一种让图像覆盖播放器的方法,但问题是,您必须在图像外部点按才能显示播放器控件。当它们出现时,它们就在图像下面。

有人知道怎么做吗?

谢谢, 约翰

4 个答案:

答案 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"]];