如何在UICollectionview在swift 3中滚动时禁用UICollectionViewCell

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在UICollectionview在swift 3中滚动时禁用UICollectionViewCell相关的知识,希望对你有一定的参考价值。

我想在UICollectionView滚动时禁用UICollectionViewCell选择。问题是,我正在尝试在cell.isSelected中设置didSelectItemAt,但是因为我已经编写了选择和取消选择的单元格行为,所以它不起作用。

override var isSelected: Bool {
    didSet {

        if isSelected {
          //selection Code 
        else{
         //deselection Code
        }
}

更新:我想在滚动时暂停选择,当我点击单元格但没有释放我的点击时考虑事件。相反,我滚动并释放。在这种情况下,collectionView正在做什么,它首先调用didSelect(我编写的代码如果已经选择了单元格则执行取消选择)。所以在这种情况下,collectionView执行取消选择,直到我的点击正在进行单元格,导致取消选择单元格,但是当我从collectionView中滚动并释放点击时,它再次选择单元格,因为它知道事件实际上是“滚动”但不是“挖掘”。

答案

你为什么用isSelected方法设置didSelect()

只有当您选择了collectionViewCell项时才会调用didSelect()方法,如果您必须使用取消选择,那么您可以在didDeselect()中编写该代码

以上是关于如何在UICollectionview在swift 3中滚动时禁用UICollectionViewCell的主要内容,如果未能解决你的问题,请参考以下文章