无法从String获取值到UIColor

时间:2016-04-17 12:31:29

标签: ios swift swift2 uicolor

我正在尝试根据我在String中保存颜色的字典来更改几个UIButton的backgroundColor。

button1.backgroundColor = dic!.valueForKey("Button1Color") as? UIColor


  // in the dictionary:
    Button1Color = "UIColor.redColor()"

我没有。 为什么呢?

1 个答案:

答案 0 :(得分:1)

您可以将颜色存储为字符串,并使用一些库或代码段(例如here)将其转换为Float并返回字符串。

或者,您可以在类似于此的方案中存储构成UIColor的4个let bg1: [String:CGFloat] = ["red": 1, "green": 0, "blue": 0, "alpha": 1] 数字:

UIColor(red:green:blue:alpha)

并使用初始值设定项UIColor创建UIColor对象。

注意:这些是将数据持久化到磁盘的一些想法。显然,在仅在内存中数组中,您可以放置​​任何您喜欢的对象,包括df = pd.DataFrame( {'Stock' : ['Apple','Broadcomm','Citi','D&G'], 'PE' : pd.Series([1.5,3.9,5.6,6.8]), })