如何对AVPlayer的播放和暂停操作执行一些操作?

我用AVPlayer在我的swift应用程序上播放video。 我想在video的中间放置一个播放button(自定义button)。 我知道如何玩点击button暂停video。

当video从默认button播放/暂停时,我找不到如何显示/隐藏自定义button? video播放/暂停时是否有任何听众或某些事件触发?

我也想从默认控制中隐藏“audio和字幕”图标。

以下是您可以如何聆听播放器状态更改并隐藏/显示button:(假设您的播放器被命名为player ,而button是playButton

 player.addObserver(self, forKeyPath: "rate", options: .New, context: nil) // somewhere after player init ... override func observeValueForKeyPath(keyPath: String?, ofObject object: AnyObject?, change: [String : AnyObject]?, context: UnsafeMutablePointer<Void>) { if keyPath == "rate" { playButton.enabled = player.rate == 1 } else { super.observeValueForKeyPath(keyPath, ofObject: object, change: change, context: context) } } 

如果玩家的比率等于0,则意味着video不在播放。