如何检测AVPlayer视频何时结束播放? [英] How to detect when AVPlayer video ends playing?

查看:374
本文介绍了如何检测AVPlayer视频何时结束播放?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用AVPlayer在Swift中播放本地视频文件(mp4)。
有没有人知道如何在播放视频时检测到?
谢谢

I'am using AVPlayer for playing local video file (mp4) in Swift. Does anyone know how to detect when video finish with playing? Thanks

推荐答案

获取 AVPlayerItemDidPlayToEndTimeNotification 您的对象需求成为 AVPlayerItem

To get the AVPlayerItemDidPlayToEndTimeNotification your object needs to be an AVPlayerItem.

为此,只需使用 即可。 AVPlayer上的currentItem 属性

现在您将收到通知一旦视频结束!

Now you will get a notification once the video ends!

查看我的示例:

let videoPlayer = AVPlayer(URL: url)       

NSNotificationCenter.defaultCenter().addObserver(self, selector: "playerDidFinishPlaying:",
        name: AVPlayerItemDidPlayToEndTimeNotification, object: videoPlayer.currentItem)

func playerDidFinishPlaying(note: NSNotification) {
    print("Video Finished")
}

Swift 3

let videoPlayer = AVPlayer(URL: url)       

NotificationCenter.default.addObserver(self, selector: Selector(("playerDidFinishPlaying:")), 
       name: NSNotification.Name.AVPlayerItemDidPlayToEndTime, object: videoPlayer.currentItem)

func playerDidFinishPlaying(note: NSNotification) {
    print("Video Finished")
}

不要忘记删除 deinit

这篇关于如何检测AVPlayer视频何时结束播放?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆