【发布时间】:2018-04-27 14:28:48
【问题描述】:
我有一个带有自定义单元格的表格视图,这些单元格在委托函数didHighlightRowAt 和didUnhighlightRowAt 中定义了自定义突出显示样式(例如,我正在更改背景颜色)。
但是,当我选择一个单元格时,会立即触发取消突出显示功能 - 我该如何避免这种情况?我希望单元格保持突出显示,而是在 viewwillappear 中取消突出显示。
谢谢!
[我将tableView.selectionStyle 设置为.none,因为这是在不使用标准选择样式的情况下进行自定义突出显示的唯一方法。这可能是问题吗?]
【问题讨论】:
-
你可能使用
deselectRow(at:animated:),特别是在你didSelectRow方法中?这将触发取消突出显示。 -
hmm,我只在
viewWillAppear使用,所以这不是问题 -
“我正在更改背景颜色” ...您是否仅尝试更改突出显示背景颜色?如果是这样,听起来你把事情复杂化了。
-
@DonMag 我只更改单元格特定部分的颜色,而不是整个背景 - 这就是为什么我没有使用标准选择样式
-
您是否在自定义单元格中查看过覆盖
setHighlighted()和/或setSelected()?