iOS 十六進位配置背景顏色

來源:互聯網
上載者:User

iOS 十六進位配置背景顏色

給UIColor寫一個延展:

 

#import

 

@interface UIColor (color)

 

+ (UIColor*)colorWithHexString:(NSString*)hex;

 

+ (UIColor*)colorWithHexString:(NSString*)hex withAlpha:(CGFloat)alpha;

 

@end

 

// Created by Dubai on 15/4/16.

// Copyright (c) 2015年 Dubai. All rights reserved.

//

 

#import "UIColor+FL.h"

 

@implementation UIColor (Ali)

 

+ (UIColor*)colorWithHexString:(NSString*)hex

{

NSString *cString = [[hex stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] uppercaseString];

 

// String should be 6 or 8 characters

if ([cString length] < 6) return [UIColor grayColor];

 

// strip 0X if it appears

if ([cString hasPrefix:@"0X"]) cString = [cString substringFromIndex:2];

 

if ([cString length] != 6) return [UIColor grayColor];

 

// Separate into r, g, b substrings

NSRange range;

range.location = 0;

range.length = 2;

NSString *rString = [cString substringWithRange:range];

 

range.location = 2;

NSString *gString = [cString substringWithRange:range];

 

range.location = 4;

NSString *bString = [cString substringWithRange:range];

 

// Scan values

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:1.0f];

}

 

+ (UIColor*)colorWithHexString:(NSString*)hex withAlpha:(CGFloat)alpha

{

NSString *cString = [[hex stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] uppercaseString];

 

// String should be 6 or 8 characters

if ([cString length] < 6) return [UIColor grayColor];

 

// strip 0X if it appears

if ([cString hasPrefix:@"0X"]) cString = [cString substringFromIndex:2];

 

if ([cString length] != 6) return [UIColor grayColor];

 

// Separate into r, g, b substrings

NSRange range;

range.location = 0;

range.length = 2;

NSString *rString = [cString substringWithRange:range];

 

range.location = 2;

NSString *gString = [cString substringWithRange:range];

 

range.location = 4;

NSString *bString = [cString substringWithRange:range];

 

// Scan values

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];

}

 

 

@end


用的時候 匯入標頭檔: 直接可以使用:

self.segControl.backgroundColor = [UIColor colorWithHexString:@"47a5d6"];


就ok了!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.