什么是最佳实践在tableView单元格上播放视频?

问题描述 投票:0回答:1

我可以在tableViewcell上播放视频,但我不知道最佳做法。我在tableview单元格上创建了​​一个avplayer视图控制器。在调用时播放视频(tableView:cellForRowAt:indexPath :)但它的性能不佳。

class NewsfeedVideoCollectionViewCell: UICollectionViewCell, Reusable, NibLoadable {
var playerVC: AVPlayerViewController?

override init(frame: CGRect) {
    super.init(frame: frame)

    let url = URL(string: "https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8")!
    player = AVPlayer()
    playerVC = AVPlayerViewController()
    playerVC!.player = player
    contentView.addSubview(playerVC!.view)
    playerVC!.view.frame = contentView.bounds
}
ios swift
1个回答
1
投票

在我看来你应该这样做:

  1. 在父视图控制器中保留一个播放器实例。 (每次单元格中的玩家不太好主意)
  2. 当细胞从可见空间移出时停止播放
  3. 在任何情况下都要准备重用以进行新的重用过程
  4. 当usr选择一些新的细胞时。停止上一个视频并将视频播放器注入准备好的帧中的选定单元格

一切都取决于您的要求。每个单元格中的恕我直言AVPlayer不是很好的想法,这与大内存使用和开始/暂停/停止处理有关。

© www.soinside.com 2019 - 2024. All rights reserved.