MPMoviePlayerViewController叠加控件在重用后不响应触摸

时间:2012-08-22 20:45:39

标签: ios5 mpmovieplayercontroller mpmovieplayer

这让我发疯了。

这很简单,我有一个MPMoviePlayerViewController,想要全屏显示电影。 在iOS 5.0+上使用ARC我希望这款播放器可以在应用程序范围内重复使用。

第一次播放电影时,它会覆盖整个屏幕并播放惊人的效果。叠加控件正确显示并对触摸反应很好。我用

来呈现它
[theMovie.moviePlayer setContentURL:movieURL];
[theMovie.moviePlayer prepareToPlay];

[self presentViewController:theMovie animated:YES completion:^{
    [theMovie.moviePlayer play];
}];

完成播放后,我拦截通知并运行此

[self dismissViewControllerAnimated:YES completion:^{
            [theMovie.moviePlayer stop];
            [theMovie.moviePlayer setContentURL:nil];
}];

现在,问题在于,从第二次开始播放电影时,它会显示控件,但播放器不再响应电影区域中的触摸。我可以使用控件,后退,播放/暂停,搜索,完成等...但是无法触摸非控制区域来切换控件可见性。如果我让它正常播放,它会自动隐藏,但在触摸非控制区域后不会再次出现。

我不知道这里发生了什么。如果你能帮助我会爱。

谢谢, 克。

1 个答案:

答案 0 :(得分:0)

将MPMoviePlayerViewController的声明移动到.h文件,并在m文件viewDidLoad或viewWillAppear中分配它和init:)