如何在带有迭代的字典键值中使用切换大小写

时间:2018-08-27 14:34:26

标签: arrays swift dictionary switch-statement iteration

我正在尝试为用户创建一个应用程序,以在timeLine上显示其操作。

我的名为StepProgressView的时间轴库没有委托或数据源。因此,我无法使用键更改迭代中的文本颜色。

我的timeLine库中有一个titleLabel和subtitleLabel。如果您想要它的工作方式,可以在此link

中检查库

我的项目上有title和subTitle数组。当我在数组中添加标题时,它会为我提供带有数组项的timeLine。

我想更改titleLabel文本颜色。

这是我打印字典时的输出。

[17: "17 Kind of long rambling explanation that no one reads in reality", 
    14: "14 Kind of long rambling explanation that no one reads in reality", 
    20: "20 Kind of long rambling explanation that no one reads in reality"

我想对颜色使用if else语句。如果dict值为17,则文本颜色应为红色或其他颜色。

但是当我迭代时,它会填充键值的最后一个颜色。这是我的问题。我希望清楚。

for (key, _) in self.stepDetails {
        progressView.pastTextColor = getColor(key: key)

    }

    func getColor(key: Int) -> UIColor {
        switch key {
        case 0...key:
            return .red
        case key ... key + 10:
            return .blue
        default:
            return .gray
        }
    }

它总是给出最后的颜色,因为它在迭代中 在这种情况下最好的方法是什么?

谢谢!

0 个答案:

没有答案