无法以编程方式设置单元容器BG

时间:2016-04-25 13:43:16

标签: ios swift uitableview

我有一个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类中设置它。那没用。发生了什么,我该如何解决?

1 个答案:

答案 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范围内的值。