1

我想设置我的表单单元格背景颜色

可以设置一种行类型(又名 RowType)

CheckRow.defaultCellSetup = { cell, row in cell.backgroundColor = .orangeColor() }

但是是否可以为任何类型(全局)设置一次?

4

2 回答 2

2

您可以使用外观代理从 AppDelegate didFinishLaunchingWithOptions 函数全局自定义类型的属性。

CheckRow.appearance()
于 2016-02-16T15:32:50.427 回答
1

有不止一种方法可以做到这一点,一种方法可能比另一种更好,这取决于您需要更改多少单元格或行类型。我知道两种方法(Swift 4)

第一个,Ahmed Onawale 答案的变体。在内部viewDidLoad(),为要全局配置的每种行类型设置单元格。

IntRow.defaultCellSetup = { cell, row in
     cell.backgroundColor = .orange
}

这将起作用,尽管如果每种行类型的每个单元格共享相同的功能可能会变得乏味,如果是这种情况,则必须逐个设置每种行类型的每个单元格,如下所示:

IntRow.defaultCellSetup  = { cell, row in cell.backgroundColor = .orange }
DateRow.defaultCellSetup = { cell, row in cell.backgroundColor = .orange }
TextRow.defaultCellSetup = { cell, row in cell.backgroundColor = .orange }

对于上述情况,还有另一种方法。

循环遍历 tableView 的每个单元格,如下所示:

    for row in form.allRows {
        let cell = row.baseCell

        cell?.backgroundColor = .orange
    }

确保在设置表单后(在 viewDidLoad 末尾)运行上面的代码,这样你的单元格的配置就不会被 Eureka 覆盖

于 2017-12-23T23:08:44.400 回答