如何更改UITableViewCellAccessoryType.Checkmark的颜色?

时间:2015-06-10 17:04:54

标签: swift uitableview checkmark

这是我的代码:

cell.accessoryType = UITableViewCellAccessoryType.Checkmark

但是当我运行应用程序时,我看不到复选标记。

然后我将背景颜色设置为黑色,我可以看到一个白色的复选标记。

如何将复选标记的颜色更改为蓝色等其他颜色?

3 个答案:

答案 0 :(得分:30)

是的,你可以做到。

只需设置单元格的tintColor

cell.tintColor = UIColor.whiteColor()
cell.accessoryType = UITableViewCellAccessoryType.Checkmark

Swift 3

let aCell = tableView.dequeueReusableCell(withIdentifier: "Cell")!
aCell.tintColor = UIColor.red
aCell.accessoryType = .checkmark
return aCell

OUTPUT

您也可以从属性检查器

执行此操作

OUTPUT

答案 1 :(得分:8)

只需从属性检查器或下面的编码设置UITableViewCell的色调颜色

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cellIdentifier = "SimpleTableViewCell"
    let cell = tableView.dequeueReusableCell(withIdentifier: cellIdentifier, for: indexPath)

    // just add below lines
    cell.accessoryType = UITableViewCellAccessoryType.checkmark
    cell.tintColor = UIColor.red


    return cell
}

@HenriqueGüttlerMorbin检查这个希望它对你有用。

答案 2 :(得分:0)

您还可以在单​​元格类(UITableViewCell类的一个子类)中设置颜色。如果希望将相同的颜色应用于表视图的所有行,请在awakeFromNib方法中设置tintColor属性。像这样:

<p:selectOneMenu binding="#{homeView.somTipoPlato}"
                id="somTipoPlato" style="width:100%">
                <p:ajax event="change" listener="#{homeView.listerprueba}" />
                <f:selectItem itemLabel="Tipo de Comida"></f:selectItem>
                <f:selectItems value="#{homeView.losTipoPlatoSelectItem}" />
            </p:selectOneMenu>

    <p:selectOneMenu id="somTipoPlatoBuscarPlato"
                    binding="#{homeView.somTipoPlato}" style="width:100%">
                    <p:ajax event="change" listener="#{homeView.listerprueba}" />
                    <f:selectItem itemLabel="Tipo de Comida"></f:selectItem>
                    <f:selectItems value="#{homeView.losTipoPlatoSelectItem}" />
                </p:selectOneMenu>

当然,如果在视图控制器的cellForRowAt方法中设置颜色,则可以根据需要使用indexPath参数根据显示的行设置不同的颜色。