【发布时间】:2018-04-16 12:42:59
【问题描述】:
我有一个虚拟动态表视图。每个单元格只包含一个标签。第一次点击单元格时,会出现一个复选标记。第二次点击它,应该使单元格的accessoryType 成为none。我实现了UITableViewDelegate 的didSelectRowAt 和didDeselectRowAt 方法。他们在这里:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print ("TT Did select at indexPath \(indexPath)")
}
func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) {
print ("TT didDeselect at \(indexPath)")
}
问题是,当我点击一个已经被点击的单元格(带有复选标记)时,didDeselectRowAt 方法不会被调用,而是didSelectRowAt 方法会再次被调用。 didDeselectRowAt 方法只有在我点击另一行时才会被调用。
我知道我错过了一些简单的东西,但无法弄清楚。您有什么想法会导致这种情况吗?
【问题讨论】:
-
didDeselectRowAt 方法在您选择与选择之前相同的单元格时未调用
-
@iParesh,是的,我完全忘记了这一点。谢谢提醒!
标签: swift