我在swift中创建了一个tableview,我正在自定义外观以使其看起来更漂亮。我想改变外观以获得清晰的背景和白色文字颜色。 Tableview功能:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell:UITableViewCell = self.myTableView
.dequeueReusableCellWithIdentifier("cell")! as UITableViewCell
let score = scores[indexPath.row]
cell.textLabel!.text = String(score.gameScore!)
UITableViewCell.appearance().textLabel?.textColor = UIColor.whiteColor();
UITableViewCell.appearance().backgroundColor = UIColor.clearColor();
return cell;
}
所以第二部分与透明细胞一起工作,但第一部分不是出于某种原因。我在网上查了一些来源,但似乎无法正确使用这个:
How to change text color in tableView section in swift
https://www.natashatherobot.com/ios-change-uitableviewcell-selection-color-app-wide/
任何帮助将不胜感激!感谢
答案 0 :(得分:5)
您需要使用您创建的“单元格”对象更改文本的颜色。所以它应该是这样的
updateUI()
将其改为您想要的任何颜色
答案 1 :(得分:3)
首先,我认为使用cell.textLabel?.textColor = UIColor.cyanColor()
全局更改所有单元格并不明智,但如果您这样做,则应该如链接所示,在appearance()
中调用它,而不是每次加载一个单元格。
其次,您可以直接在故事板中自定义许多这些功能(因为您使用的是可重复使用的单元格,您真的应该这样做) - 找到您的单元格并更改其中的文本颜色。
或者,如@Umair所述,您可以简单地将该调用更改为不是全局调用,并直接更改颜色。
答案 2 :(得分:0)
只需更改表视图代码,如下所示:
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Categoria")
cell?.textLabel?.text = categoris[indexPath.row]
cell?.textLabel?.textColor = UIColor.white // <- Changed color here
return cell!
}