我正在使用MPMoviePlayer流式傳輸MP3文件,我希望在後臺顯示一個圖像而不是默認的Quicktime徽標。MPMoviePlayer音頻專輯藝術
我發現了一種將圖像疊加到播放器上的方法,但問題在於,您必須在圖像外部輕敲以獲取播放器控件。當它們確實出現時,它們在圖像下面。
有人知道如何做到這一點嗎?
感謝, 約翰
我正在使用MPMoviePlayer流式傳輸MP3文件,我希望在後臺顯示一個圖像而不是默認的Quicktime徽標。MPMoviePlayer音頻專輯藝術
我發現了一種將圖像疊加到播放器上的方法,但問題在於,您必須在圖像外部輕敲以獲取播放器控件。當它們確實出現時,它們在圖像下面。
有人知道如何做到這一點嗎?
感謝, 約翰
大部分iPhone上的每一個應用程序是由視圖的層次的。你可以去到電影播放器的頂部根節點和遞歸走在孩子的意見,並設置hidden
值YES,直到你找到合適的項目,然後插入您的UIImageView
該項目下面。這樣,控件始終保持最佳狀態,並且仍然對用戶輸入做出響應。
您運行的風險是如果Apple更改MPMoviePlayer
用戶界面並洗牌視圖層次結構,但您可能有很多提前通知,並且可以修補您的應用程序以允許新佈局。
有這是否是猶太對AppStore的應用程序的問題,而是目前許多應用程序(尤其是相機/拍照的人)這樣做是爲了擺脫標準的窗口元素。
使用AVAudioPlayer並實現您自己的播放器UI。
,將工作檢查此
MPMoviePlayerController *moviePlayerController=[[MPMoviePlayerController alloc] initWithContentURL:theURL];
moviePlayerController.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Default.png"]];
的backgroundColor已被棄用,潛入私人景觀結構是很危險的。這對我很好:
UIImageView *coverImageView = [[UIImageView alloc] initWithImage:coverImage];
coverImageView.contentMode = UIViewContentModeScaleAspectFit;
coverImageView.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
coverImageView.frame = moviePlayerController.view.bounds;
[moviePlayerController.view addSubview:coverImageView];
我發現如果你做深度優先搜索,你想添加的UIImageView作爲子視圖是你訪問的第一個。 – mclin 2010-10-26 12:40:03