5
|
michaelsnowden · 技术社区 · 10 年前 |
![]() |
1
6
这是因为表视图重用单元格的方式。调用dequeueReusableCellWithIdentifier后,需要确保清除附件项。如:
尽管,在你做出这个改变之后,你会有一个不同的问题。该单元格将“忘记”它是因为此代码而被选中的。因此,您需要实际更改accessoryType设置的行,以检查单元格是否被选中。 |
![]() |
2
3
不久前我也遇到过这个问题,您需要添加另一个数组来跟踪标记的单元格。只需创建一个标记的NSIndexPath数组。 有点像:
|
|
3
1
对于Swift 3: 我发现的一个简化版本是使用雨燕 “.indexPathsForSelectedRows” 就在“cellForRowAt”函数中。
然后在didSelect和didDeselect中:
|
![]() |
4
0
在didselectRowAtIndex路径上,将索引路径追加到indexpath数组中
然后在cellForRowAtIndexPath上使用selectedIndexpaths数组检查该单元格是否已选中
|