2013-10-05 87 views
1

我有一個.plist設置應用程序,按順序列出顏色或根據顏色從淺到深。.plist,使用HEX而不是RGB?

目前,我們使用.plist通過輸入RGB值來排序這些顏色。我想知道在這種情況下是否可以使用HEX代替rgb?

如果是這樣,它仍然是一個字符串或將它是一個字典類型?請參閱附件截圖。

current plist

回答

0

當然,你可以在你的顏色保存爲一個十六進制數字,而不是三個獨立的值:

r=166, g=166, b=166 

a6a6a6 

爲166(十進制)等於0xa6。

0

在plist中添加一個新字符串爲十六進制,並添加該比特產。並使用此代碼GETCOLOR

+ (UIColor *) getColor: (NSString *) hexColor 
{ 
    unsigned int red, green, blue; 
    NSRange range; 
    range.length = 2; 
    range.location = 0; 
    [[NSScanner scannerWithString:[hexColor substringWithRange:range]] scanHexInt:&red]; 
    range.location = 2; 
    [[NSScanner scannerWithString:[hexColor substringWithRange:range]] scanHexInt:&green]; 
    range.location = 4; 
    [[NSScanner scannerWithString:[hexColor substringWithRange:range]] scanHexInt:&blue]; 

    return [UIColor colorWithRed:(float)(red/255.0f) green:(float)(green/255.0f) blue:(float)(blue/255.0f) alpha:1.0f]; 
} 
相關問題