iOS storyboard/xib的rgb顏色和代碼設(shè)置顏色不一樣

storyboard/xib中設(shè)置顏色:


xib中rgb.png

代碼中用UIColor的類方法設(shè)置顏色

+ (UIColor *)colorWithRed:(CGFloat)red green:(CGFloat)green blue:(CGFloat)blue alpha:(CGFloat)alpha;

或者給UIColor添加個category:

/**
 設(shè)置顏色
 
 @param hexColorString # 格式 或者 0x 格式
 @param alpha 透明度
 @return 設(shè)置的顏色
 */
+ (UIColor *)colorWithHexString:(NSString *)hexColorString alpha:(CGFloat)alpha {
    if ([hexColorString length] < 6) { //長度不合法
        return [UIColor blackColor];
    }
    NSString *tempString = [hexColorString lowercaseString];
    if ([tempString hasPrefix:@"0x"]) { //檢查開頭是0x
        tempString = [tempString substringFromIndex:2];
    } else if ([tempString hasPrefix:@"#"]) { //檢查開頭是#
        tempString = [tempString substringFromIndex:1];
    }
    if ([tempString length] != 6) {
        return [UIColor blackColor];
    }
    //分解三種顏色的值
    NSRange range = NSMakeRange(0, 2);
    NSString *rString = [tempString substringWithRange:range];
    range.location = 2;
    NSString *gString = [tempString substringWithRange:range];
    range.location = 4;
    NSString *bString = [tempString substringWithRange:range];
    //取三種顏色值
    unsigned int r, g, b;
    [[NSScanner scannerWithString:rString] scanHexInt:&r];
    [[NSScanner scannerWithString:gString] scanHexInt:&g];
    [[NSScanner scannerWithString:bString] scanHexInt:&b];
    return [UIColor colorWithRed:((float)r / 255.0f)
                           green:((float)g / 255.0f)
                            blue:((float)b / 255.0f)
                           alpha:alpha];
}

通過storyboard/xib和代碼設(shè)置的顏色色差很大,解決方法如下

方法1:storyboard/xib中直接改成device RGB

devRgb.png

方法2:

如果你的storyboard/xib很多,每個都去改動要用很多時間,用
Xcode-Color-Fixer
但是Xcode-Color-Fixer認為storyboard/xib中RGB的默認設(shè)置都是sRGB,我在檢查自己項目時發(fā)現(xiàn)有些默認還有g(shù)eneric RGB等,所以一是在腳本中將generic RGB也替換,或者自己多檢查一下~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、通過CocoaPods安裝項目名稱項目信息 AFNetworking網(wǎng)絡(luò)請求組件 FMDB本地數(shù)據(jù)庫組件 SD...
    陽明AI閱讀 16,171評論 3 119
  • 因為要結(jié)局swift3.0中引用snapKit的問題,看到一篇介紹Xcode8,swift3變化的文章,覺得很詳細...
    uniapp閱讀 4,852評論 0 12
  • 《波紋》 文/無哲 這些古老的金色瓦楞 向南鋪過去 與天空接壤 進入波紋的內(nèi)部 我看到歲月的一半 浮在水面 另一半...
    山西無哲閱讀 354評論 0 1
  • Michelle Petit, 女,43歲。銀行工作人員。2017年以月18號初診。主訴:子宮肌瘤伴慢性大量長期子...
    黃國健博士閱讀 299評論 0 0
  • 微風漸行 沒有留下什么 卻帶走了那份執(zhí)著 淚化成了恨 夾雜著雨 隨風飄遠 沒有一絲留戀 白紙上 寥寥幾字 早已繪出...
    決斷者閱讀 107評論 0 3

友情鏈接更多精彩內(nèi)容