我之前发过这个问题,但是无法得到答案所以我再次发布它。关于从iphone开发者网站下载的MoviePlayer示例,当我按下完成按钮时带有电影播放器控制模式,电影结束了退出到主视图,同时调用了moviePlayBackDidFinish函数,但是当我再次播放电影时,播放器屏幕一直闪烁,如何防止这种情况?
我没有做任何改动的代码是从苹果网站下载的示例代码完全构建的,有没有人以前遇到过这个问题,并解决它?
答案 0 :(得分:2)
此问题仅发生在不在实际设备上的模拟器中。 如果你想摆脱这个,你需要释放MoviePlayer并在每次播放电影时分配一个新的。 E.g:
- (void) moviePlayBackDidFinish:(NSNotification*)notification
{
// remove observer
[[NSNotificationCenter defaultCenter]
removeObserver:self
name:MPMoviePlayerPlaybackDidFinishNotification
object:thePlayer];
[thePlayer release];
}
和
thePlayer = [[MPMoviePlayerController alloc] initWithContentURL:theMovie];
[[NSNotificationCenter defaultCenter]
addObserver:self
selector:@selector(moviePlayBackDidFinish:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:thePlayer];
[thePlayer play];
其他地方。