我的重用 UITableViewCell
的 setSelected
看起来像这样(我的 setHighlighted
也是如此):
override func setSelected(_ selected: Bool, animated: Bool) {
if selected {
backgroundColor = .red
} else {
backgroundColor = .white
}
}
每当单元格滚出然后返回到 View 中时,背景颜色就会变回默认的白色。就好像单元格没有保持其选中状态。
最佳答案
问题是 setSelected
会被调用,如果单元格被选中,它会将其更改为正确的背景颜色,然后 setHighlighted
会被调用,因为我的单元格是未突出显示它会将我的单元格更改回默认的白色。
我只是从我的 setHighlighted
实现中取出了内容,它解决了我的问题。
关于ios - 当滚动出 View 时,覆盖的 setSelected 和 setHighlighted 不保留选定的背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54756123/