问题描述
我有不同的UIView
,一个在另一个之上;他们每个人都使用 AVPlayer
播放视频
我需要在最后重播每个视频,为此我使用以下代码:
NotificationCenter.default.addobserver(self,selector: #selector(playerDidReachEnd),name: .AVPlayerItemDidplayToEndTime,object: self.player.currentItem)
@objc fileprivate func playerDidReachEnd(){
self.player.seek(to: .zero)
self.player.play()
}
我注意到,当调用选择器时,另一个UIView
的所有其他玩家也开始播放......
这对我来说很奇怪,因为我将观察者的对象设置为仅 self.player.currentItem
我怎样才能只播放这个AVPlayer
?
解决方法
问题是这些代码都在这些视图中。因此,当发布通知时,所有这些视图都是观察者。所以他们都开始玩了。