AVPlayer play() 从 iglistkit 加载视频时需要大约 500 毫秒来播放视频

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

我正在制作一个像 ticktok 这样的应用程序,并使用 IGListKit 和 AVplayer 来播放视频。我缓存视频,然后显示和播放它,检查单元格是否占据了它应该开始播放的整个屏幕。这样做会有 500 毫秒的延迟,但它需要像 ticktok 一样流畅地工作。

在 scrollViewDidEndDecelerating 中使用以下代码,以便在滚动结束时检查占据集合视图整个屏幕的可见单元格

let collectionViewVisibleRect = getCollectionViewVisibleRect()
       for visibleIndexPath in collectionView.indexPathsForVisibleItems {
           if let cell = collectionView.cellForItem(at: visibleIndexPath) as? VideoFeedCollectionViewCell {
               if collectionViewVisibleRect.contains(cell.frame) {
                   cell.queuePlayer?.play()
                   cell.imgPlay.isHidden = true
               }else {
                   cell.queuePlayer?.pause()
               }
           }
       }

直接从单元格播放时播放流畅,但同时播放多个视频。

caching uicollectionviewcell avplayer iglistkit
© www.soinside.com 2019 - 2024. All rights reserved.