Luk*_*uke 7 ios ios6 uicollectionview uicollectionviewcell
当使用UICollectionView
与allowsMultipleSelection
设置为YES只有十几个人的项目是可选的.UICollectionViewDelegate
停止打电话collectionView:didSelectItemAtIndexPath:
.
看起来很随意.您可以选择一些项目,向下滚动,再选择一些项目,在某些时候您无法再选择任何项目.
当单元格较小时,您似乎可以选择更多项目.单元格越大,您在停止工作之前可以选择的项目越少.
Luk*_*uke 16
我发现虽然我之前的回答有效,但可能是因为没有调用super.虽然文档UICollectionReusableView
没有提到这一点,但是UITableViewCell
具有相同方法的文档可以做到.
- (void)prepareForReuse
{
[super prepareForReuse]
// Your code here.
}
Run Code Online (Sandbox Code Playgroud)
旧答案:
这可能是一个错误UICollectionView
.
发生的事情是先前选择的单元格正在被重用并保持选定的状态.集合视图未设置selected
为"NO".
解决方案是重置prepareForReuse
单元格中的选定状态:
- (void)prepareForReuse
{
self.selected = NO;
}
Run Code Online (Sandbox Code Playgroud)
如果选择了重用单元格,则selected
在prepareForReuse
调用后集合视图将设置为"YES" .
这是UICollectionView
应该自己做的事情.谢天谢地,解决方案很简单.不幸的是,我通过跟踪自己的选择状态花了很多时间来解决这个bug.我没有意识到为什么会发生这种情况,直到我开始研究另一个细胞较小的项目.
归档时间: |
|
查看次数: |
6846 次 |
最近记录: |