我有一个UITableView,它显示了产品的功能,并在单元格右侧显示了支持功能的复选标记。该应用程序允许用户检查更多功能或取消选中其他功能,并获得UITableView进入编辑模式并启用多选模式。问题是我想设置已经检查过的功能(为了让用户取消选中它们),但indexPathsForSelectedRows是只读的,我找不到初始化某些行的方法,因此当网格进入时它们已被选中编辑模式。有没有办法得到这个结果?任何帮助将不胜感激。
图片显示了两种情况。当表格视图未处于编辑模式时,我有复选标记附件。当表格视图进入编辑模式时,启用多选,它会显示复选框...但它们都是未经检查的,我无法以编程方式检查它们......或者至少它看起来像是什么
答案 0 :(得分:0)
如果选中标记是选择样式,则可以尝试使用
tableView.deselectRow(at: indexPath, animated: true)
didSelectRowAtIndexPath
方法中的
答案 1 :(得分:0)
好的......最后我找到了办法。我的UITableView在正常模式下禁用了选择,在编辑模式下启用了多行选择...以解决问题,它足以覆盖
override func setEditing(_ editing: Bool, animated: Bool) {
super.setEditing(editing, animated: animated)
tableView.selectRow(at: ....., animated: true, scrollPosition: .none)
}
然后选择我想在编辑模式中检查的行。 那样可以解决问题。感谢所有试图帮助我的人......