我的setSelected
为我的重用UITableViewCell
看起来像这样(和我的setHighlighted
一样):
override func setSelected(_ selected: Bool, animated: Bool) {
if selected {
backgroundColor = .red
} else {
backgroundColor = .white
}
}
只要单元格滚出然后再返回视图,背景颜色就会变回默认的白色。就好像细胞没有保持其选择的状态。
问题是setSelected
会被调用,如果选择单元格会将其更改为正确的背景颜色,然后setHighlighted
将被调用,并且由于我的单元格未突出显示,它会将我的单元格更改回默认白色。
我只是从我的setHighlighted
实现中取出内容,它已经解决了我的问题。