如何在iPad上以全屏模式捕捉MPMoviePlayer下一次按钮点击事件?

Lia*_*iam 2 xcode objective-c mpmovieplayercontroller mpmovieplayer ipad

MPMoviePlayerViewControlleriPad处于全屏模式时,默认情况下其控件在叠加层上有上一个和下一个按钮.在我的项目中,我需要捕获该叠加按钮的单击并相应地处理它.由于我还不确定如何调用播放列表,因此没有下一个项目,单击该按钮会在退出全屏模式后中断视图.不知怎的,它只是不知道该做什么,我没有错误.

我想知道的是,是否有办法从fullscreen下一个和前一个按钮收听/捕捉该事件?

我也试图让覆盖我自己控制生活的MPMoviePlayer,MPMoviePlayerController以及MPMoviePlayerViewController没有成功.一旦玩家进入fullscreen模式,任何存在的叠加都将被忽略,并且不随屏幕缩放一起进行.

fullscreen模式下是否有可靠的方法来覆盖?我看过Apple的样本,但这似乎对我在fullscreen模式下实际添加任何东西都不起作用.

任何帮助,将不胜感激.

Sea*_*ell 8

我没有使用过MPMoviePlayerViewController,但这里有一些基于查看文档的想法.

看起来MPMoviePlayerController有一些可能相关的通知,但我没有看到"next和previous按钮"的具体引用.他们可能会寻找按钮吗?

注册通知

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(moviePlayerPlaybackStateChanged:) name:MPMoviePlayerPlaybackStateDidChangeNotification object:nil];
Run Code Online (Sandbox Code Playgroud)

并将此函数添加到您的对象:

-(void)moviePlayerPlaybackStateChanged:(NSNotification *)notification {
    MPMoviePlayerController *moviePlayer = notification.object;
    MPMoviePlaybackState playbackState = moviePlayer.playbackState;
    // ...
}
Run Code Online (Sandbox Code Playgroud)

我怀疑你会发现你正在获得MPMoviePlaybackStateSeekingForward和......那些按钮的SeekingBackward更新.

  • 谢谢Seamus,但是在浏览文档和lto的源代码之后开始看起来像是Apple在全屏模式下没有通知我们有关按钮事件的信息.根据文档,我可以获得有关发送事件的对象以及一些用户信息的信息,但没有任何帮助我知道他们是否单击了下一个按钮或上一个按钮.在您的观点上,我确实启动了每个可用的侦听器并抓取每个NSNotification.除非我真的错过了什么,否则无法获得有关下一个和上一个全屏视图控件的信息. (4认同)