如果条件为Swift 4.0,则无法更改文本的颜色

时间:2017-12-06 04:55:37

标签: ios swift tableview

以下是我的代码。我正在尝试使用if条件更改tableViewCell中文本的颜色,如果字符串包含-符号,那么它应该变为红色或绿色,但事实证明所有字符串都变为绿色。

cell.percentLabel.text = PercentChange[indexPath.row]

for i in PercentChange{
    if (i.range(of: "-") != nil) {
        cell.percentLabel.textColor = UIColor.red
   } else {
        cell.percentLabel.textColor = UIColor.green
    }
}

1 个答案:

答案 0 :(得分:3)

假设您发布的代码位于cellForRowAt方法中,则不应循环遍历所有PercentChange值。

如上所述,您可以根据PercentChange中的最后一个值设置每个单元格的颜色。

您应该只查看给定行的特定值。

let change = PercentChange[indexPath.row]
cell.percentLabel.text = change
cell.percentLabel.textColor = change.range(of: "-") != nil ? .red : .green