【发布时间】:2019-12-05 14:22:01
【问题描述】:
在 UITableView 中,当点击并按住一个单元格并(不释放此单元格)切换到选项卡栏中的另一个屏幕并返回到初始屏幕时,该单元格保持突出显示(未选中),如果点击另一个单元格,第一个一个被选中。
点击并按住第一个单元格时,会为第一个单元格调用 tableView(_ tableView: UITableView, didHighlightRowAt indexPath: IndexPath)。到目前为止,它应该是这样的。
点击另一个单元格时(返回屏幕后),第一个单元格调用tableView(_ tableView: UITableView, didUnhighlightRowAt indexPath: IndexPath)。然后是 first 单元格的所有选择方法。
有没有办法消除这种行为?并且在返回屏幕时没有突出显示的单元格。
cell.setHighlighted(false, animated: false) 不起作用。是的,它消除了突出显示,但再次为 first 单元格调用选择方法。
【问题讨论】:
-
您可以使用委托通知前一个屏幕从其他屏幕重新加载表。
-
通过重新加载第一个单元格来解决,但这是非常不吸引人的解决方案。
标签: ios swift uitableview uikit