从MPMoviePlayerController标准控件中删除/隐藏全屏按钮

ask*_*sif 1 mpmovieplayercontroller ios

我想删除/隐藏从全屏按钮MPMoviePlayerController标准控件全屏模式正在创造大量的问题,也没有我的app.I的要求只是希望play,stop,forward,reverse controls.有谁能够帮我?

小智 17

没有标准的方法可以做到这一点.这是你的选择.

您可以将MPMoviePlayerController'scontrolStyle 设置为None并创建自己的自定义控件.缺点:这是很多工作.

您可以使用NSNotificationCenter截取MPMoviePlayerWillEnterFullscreenNotification并立即将fullScreen模式设置为NO.缺点:基于用户的iOS版本,这可能会导致闪烁或一些毛病效果.

你可以MPMoviePlayerController浏览视图的子视图,直到你看到一个MPInlineTransportControls视图,其中包含所有类的控件,sliderplay/pause button全屏按钮MPTransportButton.找到那个,你可以隐藏它或从超级视图中删除它.缺点:截至目前,这已通过应用商店评论,并在所有当前支持的iOS版本上完美运行.但这可能随时改变.如果Apple决定重做他们的默认视频播放器,您最终可能会使用非工作代码.

  • 这个答案非常有用,如果您使用的是"NSNotificationCenter"方法,那就有点不对了.你应该听'MPMoviePlayerDidEnterFullscreenNotification`而不是'MPMoviePlayerWillEnterFullscreenNotification`.如果你听'Will`而不是`Did`,你会在设置为'YES`之前将`fullscreen`属性设置为'NO`并且该方法不起作用.我还发现了一个视频消失的错误,但在你调用`setFullScreen:NO`后继续播放.为了防止这种情况,我在`setFullScreen`方法之后调用了`[video pause];`然后``[play play]`. (2认同)