【问题标题】:How to disable UICollectionViewCell when UICollectionview is scrolling in swift 3当 UICollectionview 在 swift 3 中滚动时如何禁用 UICollectionViewCell
【发布时间】:2018-05-23 09:46:12
【问题描述】:

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

override var isSelected: Bool {
    didSet {

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

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

【问题讨论】:

  • 你将如何做二合一的一件事?滚动时的选择听起来不对。要么停止滚动并选择,要么只是滚动。
  • @TusharSharma 感谢您的回复,请在我更新后再次查看我的问题。如果它足够详细,请告诉我。

标签: ios swift3 uicollectionview uikit uicollectionviewcell


【解决方案1】:

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

didSelect() 方法仅在您选择了一个 collectionViewCell 项目时调用,如果您必须使用取消选择,那么您可以在didDeselect() 中编写该代码

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-12
    相关资源
    最近更新 更多