【发布时间】:2017-08-03 09:50:06
【问题描述】:
我使用AVPlayer 在我的TableViewCell 中显示视频。它正在 TableViewCell 播放,但问题是我无法阻止它。
我已经使用此代码在 cellforRow 中播放视频
avPlayer = AVPlayer(url: videoURL! as URL)
playerLayer = AVPlayerLayer(player: avPlayer)
playerLayer.frame = CGRect(x: cell.videoview.frame.origin.x, y: cell.videoview.frame.origin.x, width:cell.videoview.frame.size.width, height: cell.videoview.frame.size.height)
cell.videoview.layer.addSublayer(playerLayer)
avPlayer?.play()
avPlayer 和 playerLayer 在 viewController 中定义如下
var avPlayer : AVPlayer?
var playerLayer = AVPlayerLayer()
我正在使用此代码来停止视频
self.avPlayer?.pause()
self.playerLayer.removeFromSuperlayer()
self.avPlayer?.rate = 0.0
self.avPlayer?.replaceCurrentItem(with: nil)
self.avPlayer = nil
我的问题是,如何停止在AVPlayerLayer 上通过AVPlayer 运行的视频?
请提出解决方案,如果有任何替代方案,也请提出建议。
【问题讨论】:
-
检查 HomeViewController 中不存在名为 stopVideoPlayer 的 ibaction。签入故事板并删除不良连接。
-
它存在我已经创建了一个断点来检查它在这条线上崩溃 self.avPlayer = nil
-
你实现了这个方法
stopVideoPlayer
标签: ios swift uitableview avplayer