gpt4 book ai didi

ios - 如何检查 UICollectionViewCell 子类是否符合协议(protocol)

转载 作者:行者123 更新时间:2023-11-30 11:25:41 24 4
gpt4 key购买 nike

我有一个符合类协议(protocol)VideoProtocol的UICollectionViewCell:

class VideoCell : UICollectionViewCell, VideoProtocol {

}

我正在尝试获取可见 UICollectionViewCells 的数组并过滤它们,以便我只获取符合 VideoProtocol 的数组:

for cell in collectionView.visibleCells {
//Do something here to check conformity
}

我该怎么做?我想确保它们具有 UICollectionViewCellVideoProtocol 的属性。

最佳答案

在每个 for 循环期间检查协议(protocol)一致性;
其中 collectionView.visibleCellsUICollectionViewCell 的数组。

for case let cell as VideoProtocol in collectionView.visibleCells {
// do something with cell
// cell is type VideoProtocol
}

您还可以在 for 循环期间使用 where 子句,但这不会对变量进行类型转换,这意味着当您从 for 循环内访问变量时,您将不会从协议(protocol)访问 API .

for cell in collectionView.visibleCells where cell is VideoProtocol {
// do something with cell
// cell is type UICollectionViewCell
}

关于ios - 如何检查 UICollectionViewCell 子类是否符合协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50761626/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com