完成后如何再次播放相同的音频?现在我将这段代码与 AVPlayer 一起使用:
fileprivate func play () {
guard let url = URL(string: record.recordUrl) else { return }
let playItem = AVPlayerItem(url: url)
player.replaceCurrentItem(with: playItem)
NotificationCenter.default.addObserver(self, selector: #selector(playerDidFinishPlaying), name: NSNotification.Name.AVPlayerItemDidPlayToEndTime, object: playItem)
player.play()
}
@objc func playerDidFinishPlaying(note: NSNotification) {
print("Player finished")
currentTimeSlider.setValue(0, animated: true)
currentTimeLabel.text = "00:00"
}
Run Code Online (Sandbox Code Playgroud)
@objc func playerDidFinishPlaying(note: NSNotification) {
print("Player finished")
currentTimeSlider.setValue(0, animated: true)
currentTimeLabel.text = "00:00"
//Swift 4
player.seek(to: .zero, toleranceBefore: .zero, toleranceAfter: .zero)
//Swift 2 & 3 (I believe for 2 & 3)
//player.seek(to: kCMTimeZero, toleranceBefore: kCMTimeZero, toleranceAfter: kCMTimeZero)
//Play
player.play()
}
Run Code Online (Sandbox Code Playgroud)
我将搜索添加回开头(容差确保它恰好为零,而不是带有一定误差范围的零附近)。
还添加了完成后播放的功能。
| 归档时间: |
|
| 查看次数: |
713 次 |
| 最近记录: |