【发布时间】:2020-09-08 17:07:01
【问题描述】:
我有一个简单的表格视图,单元格中有数字。一个单元格 - 一个数字。如果单元格编号是其他表格视图单元格编号中最高的,我想将单元格文本加粗。
例如,我有一个带有数字的表格视图:
我需要将 99 单元格文本加粗,因为 99 是所有表格视图单元格中的最高数字。如何做到这一点?
我的数据源数组:
class Exercise: NSObject, Codable {
var name = ""
var reps = [Count]()
}
class Count: NSObject, Codable {
var reps: Double
var date = Date()
init(reps: Double) {
self.reps = reps
super.init()
}
}
还有我的代码:
class Counts: UITableViewController, CountsDetailViewControllerDelegate {
var countExercise: Exercise!
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return countExercise.reps.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Count", for: indexPath)
let item = countExercise.reps[indexPath.row]
let formatter = DateFormatter()
formatter.dateStyle = .short
formatter.timeStyle = .short
cell.textLabel?.text = item.reps.removeZerosFromEnd()
cell.detailTextLabel?.text = formatter.string(from: item.date)
return cell
}
【问题讨论】:
-
你的数据源数组是什么?
-
我已添加到问题中。
-
与您的问题无关,但每次调用 cellForRowAt 时您都在创建一个新的 DateFormatter
-
那么放置 DateFormatter 的更好的地方是什么?
标签: ios swift uitableview uiviewcontroller