gpt4 book ai didi

ios - 使用 if 语句更改单元格中标签的文本颜色

转载 作者:行者123 更新时间:2023-11-30 11:53:53 25 4
gpt4 key购买 nike

如果alarmLevel的值!=“0”,我正在尝试更改单元格中一个或多个标签的颜色。这就是我到目前为止所拥有的,它改变了所有单元格中 cell.locationLabel 的颜色,而不仅仅是满足 if 语句的单元格。我确定它与 indexPath 有关,但我无法弄清楚。

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = myTableView.dequeueReusableCell(withIdentifier: cellId, for: indexPath) as! ViewControllerTableViewCell
cell.locationLabel.text = eventsList[indexPath.row].location
cell.eventTimeLabel.text = eventsList[indexPath.row].dateTime
cell.eventTypeLabel.text = eventsList[indexPath.row].agencyEventSubtypeCode
cell.agencyIdLabel.text = eventsList[indexPath.row].agencyId

if alarmLevel != "0" {
cell.locationLabel.textColor = UIColor.red
} else {
cell.locationLabel.textColor = UIColor.black
}
return cell
}

最佳答案

您需要将 alarmLevel 作为整型变量添加到事件列表数组类型中。并根据您的需要更改数组 eventsList

中每个 event 项的整数值
class Events {
var location = String()
var dateTime = String()
var agencyEventSubtypeCode = Int()
var agencyId = Int()
var alarmLevel = Int() //Need this here
}

var eventsList = [Events]()

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

let cell = myTableView.dequeueReusableCell(withIdentifier: cellId, for: indexPath) as! ViewControllerTableViewCell
cell.locationLabel.text = eventsList[indexPath.row].location
cell.eventTimeLabel.text = eventsList[indexPath.row].dateTime
cell.eventTypeLabel.text = ("\(eventsList[indexPath.row].agencyEventSubtypeCode)")
cell.agencyIdLabel.text = ("\(eventsList[indexPath.row].agencyId)")

if eventsList[indexPath.row].alarmLevel != 0 {
cell.locationLabel.textColor = UIColor.red
} else {
cell.locationLabel.textColor = UIColor.black
}
return cell
}

关于ios - 使用 if 语句更改单元格中标签的文本颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48043181/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com