【发布时间】:2020-04-17 07:40:24
【问题描述】:
我的应用程序正在显示一些分数结果,我想根据结果添加从红色到绿色的分数标签颜色变化:
self.scoreLabel.text = "\(total100)/100"
实现它的最简单方法是什么?
提前谢谢你
【问题讨论】:
标签: ios swift xcode uiviewcontroller uilabel
我的应用程序正在显示一些分数结果,我想根据结果添加从红色到绿色的分数标签颜色变化:
self.scoreLabel.text = "\(total100)/100"
实现它的最简单方法是什么?
提前谢谢你
【问题讨论】:
标签: ios swift xcode uiviewcontroller uilabel
你需要使用属性字符串
let myMutableString = NSMutableAttributedString(string: "\(total100)/100", attributes: [NSAttributedString.Key.font:UIFont(name: "Georgia", size: 18.0)!])
myMutableString.addAttribute(NSAttributedString.Key.foregroundColor, value: UIColor.red, range: NSRange(location:7,length:3))
self.scoreLabel.attributedText = myMutableString
【讨论】:
当结果改变时调用这个函数。
func setTextColor(score: Int){
if score < 34 {
self.scoreLabel.textColor = .red
}else {
self.scoreLabel.textColor = .green
}
}
【讨论】: