我有一个UITableView单元格设置,如BasicCell> ContentView> Container。当我在界面构建器中设置容器的背景时,我得到了所需的深灰色阴影。但是,当我以编程方式设置较暗的阴影时,在cellForRowAtIndexPath中,我得到一个白色背景。
cell.container.backgroundColor = UIColor(red: 20, green: 20, blue: 20, alpha: 1.0)
因此,通过引入程序化颜色设置,它突然忽略了界面构建器颜色和编程颜色。我已经阅读了几个线程并尝试使用willDisplay单元格:
func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) {
let myCell = cell as! CustomTableViewCell_F2
myCell.backgroundColor = UIColor.clearColor()
myCell.backgroundView = nil
myCell.container.backgroundColor = UIColor(red: 20, green: 20, blue: 20, alpha: 1.0)
}
我也尝试过在CustomTableCell类中设置它。那没用。发生了什么,我该如何解决?
答案 0 :(得分:1)
更改
cell.container.backgroundColor = UIColor(red: 20, green: 20, blue: 20, alpha: 1.0)
到
let shade: CGFloat = 0.2
cell.container.backgroundColor = UIColor(white: shade, alpha: 1.0)
您的颜色UIColor(red: 20, green: 20, blue: 20, alpha: 1.0)
实际上是白色的。您应该为颜色分量提供0.0到1.0范围内的值。