UICollectionViewCell:单元可见性更改时,是否会触发任何事件?

时间:2018-07-17 04:40:01

标签: ios swift uicollectionview

我们的应用程序在集合视图单元格中播放视频。显然,屏幕上的AVPlayers数量是有限制的(我认为是16个),因此我们需要在集合视图单元格可见时初始化AVPlayer和AVPlayerController,并在该单元格不可见时释放它们。

单元格可见性发生变化时,是否会触发任何事件?是否有更好的方法来解决上述问题?

2 个答案:

答案 0 :(得分:2)

我相信您正在寻找这两种方法

optional func collectionView(_ collectionView: UICollectionView, 
                 willDisplay cell: UICollectionViewCell, 
                   forItemAt indexPath: IndexPath)

optional func collectionView(_ collectionView: UICollectionView, 
            didEndDisplaying cell: UICollectionViewCell, 
                   forItemAt indexPath: IndexPath)

在appledoc中检查它们。 WillDisplayCellEndDisplayingCell

答案 1 :(得分:1)

请确保UICollectionViewDelegate具有方法:collectionView(_:willDisplay:forItemAt:)collectionView(_:didEndDisplaying:forItemAt:)。您也可以使用visibleCells的{​​{1}}属性来检查可见单元格的数量。