2

我有几个AVPlayerViewControllers设置ViewControllersUITabBarController. 我想要的是让当前可见的视频AVPlayerViewController在用户切换到另一个选项卡时自动暂停播放(这是另一个AVPlayerViewController)时自动暂停播放

我尝试了这种方法:

override func viewWillDisappear(animated: Bool) {
    player?.pause()

    super.viewWillDisappear(animated)
}

但视频只是在后台继续运行。(至少音频仍在运行)调试器说播放器属性在 viewWillDisappear 中不为零。我已经尝试过隐式并强制展开,但无济于事。

4

1 回答 1

2

我能够确定问题所在。似乎你不能暂停viewWillDisappear,无论是 withpause()还是 with player?.rate = 0.0。因此,为了防止您的视频在后台播放,您必须将AVPlayerViewController'player属性设置为 nil in viewWillDisappear。可悲的是,这意味着您必须编写一些代码来保留播放状态。

对我来说似乎有点像一个错误,希望以后能解决这个问题。

于 2015-11-21T13:40:12.597 回答