【问题标题】:Compare UIColor to Text Label/String将 UIColor 与文本标签/字符串进行比较
【发布时间】:2019-11-30 07:22:33
【问题描述】:

如何测试标签 (meaningLabel) 的 textColor 是否与另一个标签 (textColorLabel) 中的颜色名称匹配?

例如: (屏幕上出现红色)==“红色”(出现在标签上)--> 分数 += 1 (屏幕上出现蓝色)== "BLUE"(出现在标签上)--> "boo -- no match"

这是我的尝试:

    func updateScore() {
        if meaningLabel.textColor == textColorLabel.textColor{
            print("yay -- match")
            score += 1
            scoreLabel.text = String(score)
        } else {
            print("boo -- no match")
        }
    }

【问题讨论】:

    标签: ios swift if-statement colors


    【解决方案1】:

    您可以创建文本和 UIColor 的字典,然后将其用于验证。这是一个例子:

     var colorDict : [String:UIColor] = ["Red": UIColor.red,"Blue":UIColor.blue,"Black":UIColor.black]
     func updateScore() {
    
        if meaningLabel.textColor == colorDict[textColorLabel.text!] {
             print("yay -- match")
             score += 1
             scoreLabel.text = String(score)
         } else {
             print("boo -- no match")
         }
     }
    

    注意:- 确保使用字典键名称作为您的文本 文字颜色标签

    【讨论】:

    • 您能否在您的笔记中详细解释“使用字典键名称作为 textColorLabel 的文本”。这是否意味着遍历 dict 以获取键值然后..?我尝试实施您的建议,但现在我的 scoreLabel 无法正常工作?
    • 不,我的意思是:确保您的 textColorLabel 文本与“字典键”匹配。即你的 textLabelColor 可以是 = "Red" || “蓝” || “黑色的” 。你明白吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-21
    • 2021-03-08
    • 2023-03-08
    • 2015-10-22
    • 2022-01-06
    • 2021-05-22
    相关资源
    最近更新 更多