问题描述
我在更改 UITableViewCell 的背景颜色时遇到问题。
我将 Cell 的背景色设置为 UIColor.systemGray6 但是披露指示器周围的颜色仍然是白色的。但在黑暗模式下,它可以正常工作,如下图所示:
这是我的包含披露指示符的单元格代码:
class SettingsdiscolsureCell: UITableViewCell {
override init(style: UITableViewCell.CellStyle,reuseIdentifier: String?) {
super.init(style: .subtitle,reuseIdentifier: reuseIdentifier)
self.contentView.backgroundColor = UIColor.systemGray6
self.textLabel?.font = UIFont(name: "AvenirNext",size: UIFont.labelFontSize)
self.accessoryType = .disclosureIndicator
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
我尝试了 self.accessoryView?.backgroundColor = .systemGray6
,但发现改变了
为什么会发生这种情况,我应该怎么做才能改变整个背景颜色?
解决方法
不要为 UITableViewCell 的 contentView 分配颜色,而是使用这个
self.backgroundColor = UIColor.systemGray6
您的单元格背景颜色将显示在附件类型下方