代码之家  ›  专栏  ›  技术社区  ›  mxg

如何知道mpmovieplayercontroller正在iPhone OS 3.0中播放

  •  3
  • mxg  · 技术社区  · 15 年前

    我需要知道在某个特定的时刻,mpmovieplayercontroller是否正在播放。

    在iPhone3.0中,它不会触发mpmovieplayerContentPreloadFinishNotification。

    有人知道解决办法吗?

    事先谢谢!

    2 回复  |  直到 14 年前
        1
  •  1
  •   Community CDub    8 年前

    相同的问题(但没有答案) here 在其他网站(例如 here )

    不太理想,但目标3.1似乎解决了问题。

    一个解决方案也许可以设置 MPMoviePlayerController 财产 scalingMode 除了违约之外 MPMovieScalingModeAspectFit (例如) MPMovieScalingModeNone 并确保您的视频大小正确)然后打电话 play 然后钩住 MPMoviePlayerScalingModeDidChangeNotification 而是事件。好像有人打过电话(不止一次!)一旦电影开始播放。当然,如果用户手动更改缩放模式,它也会被调用,因此需要为此编写代码。它很脏,但能帮到你吗?

        2
  •  5
  •   jNayden    15 年前

    所以谢谢你的回答。 我把这个修好,然后把答案贴出来。 答案是,如果在初始化后立即调用play(),则不会激发mpmovieplayerContentPreloadFinishNotification。

    要使mpmovieplayerContentPreloadFinishNotification正常工作,必须在触发mpmovieplayerContentPreloadFinishNotification时调用mpmovieplayerController的“play()”方法(我的意思是在mpmovieplayerContentPreloadFinishNotification方法中)。在这种情况下,它总是有效的。

    在3.0、3.1和3.1.2测试