我正在开发一个像清单一样的UITableView。我需要在点击UITableViewCell
时显示复选标记,并在再次点击UITableViewCell时隐藏复选标记。我已经尝试了this解决方案但由于var checked = [Bool]()
部分我无法构建。我怎么能用另一种方式解决呢?
修改 我已将下面的代码添加到cellForRowAtIndexPath
if checked == true {
cell.accessoryType = .None
checked = false
} else if checked == false {
cell.accessoryType = .Checkmark
checked = true
}
答案 0 :(得分:2)
我用这个:( Swift 3)
func tableView(_ tableView: UITableView, didSelectRowAtIndexPath indexPath: IndexPath)
{
if let cell = tableView.cellForRow(at: indexPath) {
if self.selectedIndexPaths.contains(indexPath)
{
cell.accessoryType = .none
self.selectedIndexPaths.remove(indexPath)
}
else
{
cell.accessoryType = .checkmark
self.selectedIndexPaths.add(indexPath)
}
// anything else you wanna do every time a cell is tapped
}
}
答案 1 :(得分:1)
data-value
类型的checked
属性添加到您的模型中。Bool
中根据属性设置复选标记。