【发布时间】:2014-02-04 23:56:21
【问题描述】:
我正在实现启用多选的 UICollectionView。
我的一些单元格是可选择的,有些则不是。以下是事件链:
- 我选择了几个单元格,点击它们并将
YES返回到shouldHighlightItemAtIndexPath:shouldSelectItemAtIndexPath:
- 我尝试通过点击来选择一个不可选择的单元格(不可选择的方面是通过将
NO返回到shouldSelectItemAtIndexPath:来实现的) - 结果:所有选定的单元格都被取消选择,并在它们上调用
didDeselectItemAtIndexPath:。注意:shouldDeselectItemAtIndexPath:不会被调用。
预期结果:什么都没有发生。
这是正常行为吗?我在文档中找不到任何内容。如果是这样,我怎样才能不取消选择我的单元格?
【问题讨论】:
-
您是否将表格视图的
allowsMultipleSelection设置为YES? -
我知道我会得到这个问题...应该提到它...是的我做到了。
-
尝试实现委托方法
tableView:willDeselectRowAtIndexPath:,在里面设置断点,看看什么时候调用。这可能有助于了解正在发生的事情。 -
我正在使用 UICollectionView,而不是 UITableView。但由于这两个非常相似,我调查了一下。 UICollectionViewDelegate 协议中没有
willDoXOrY方法,但有一个shouldDeselectItemAtIndexPath方法。我查了一下,没有调用。好主意。 -
@BlackRider 实际上,我确实在帖子的第一行提到了“启用多项选择”。
标签: ios objective-c uikit uicollectionview uicollectionviewcell