2015-10-24 49 views
0

我正在試圖製作一個字典數組來組合一個字符串到UIColor。所以像這樣我的所有顏色(很多顏色)都會很容易管理。我想喜歡稱:品紅,然後,引擎蓋下,具有的UIColor在RGB字符串到UIColor的字典數組

我都試過,但它拋出一個錯誤:

let gColor: [String]:[UIColor] = 
     ["magenta"]:[UIColor(red: 0, green: 0, blue: 0, alpha: 1)] 
     // and like 100 colors are stored here , but isn't working when i call them 
+0

您需要使用普通的字典 'VAR gColor:[字符串:的UIColor]' –

回答

1

你要找的語法

var gColor: [String : UIColor] = ["magenta":UIColor(red: 0, green: 0, blue: 0, alpha: 1)] 

或者定義結構的任何類

struct Color { 
static let Black = UIColor(red: 0, green: 0, blue: 0, alpha: 1) 
static let Red = UIColor(red: 1.0, green: 0, blue: 0, alpha: 1) 
} 

外,並呼籲顏色與

let color = Color.Red 
+0

感謝你非常多 – perteadrian

+0

我該如何使用它: var topColor:UIColor = ** colors.magenta ** var topColor:UIColor = ** colors [品紅色] ** var topColor:UIColor = **顏色(洋紅色)** 我知道它的一個愚蠢的問題,但我有點新,我不知道所有的 語法。 @vadian – perteadrian

+0

聲明'gColor'的語法:'var topColor = gColor [「magenta」]',不需要類型註釋,編譯器推斷類型。答案中描述了調用s struct成員的語法。 – vadian

0

嘗試:

let gColor: [String:UIColor] = ["magenta": UIColor(red: 0, green: 0, blue: 0, alpha: 1)] 

如果您需要動態改變的字典,使用此代碼:

var gColor = [String:UIColor]() 
gColor["magenta"] = UIColor(red: 0, green: 0, blue: 0, alpha: 1)