亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請問老師在swift 語言中怎樣直接使用16進制的色值

請問老師在swift 語言中怎樣直接使用16進制的色值

正在回答

5 回答

func UIColorFromRGB (hex:String) -> UIColor {

? ? ? ? var cString:String = hex.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet()).uppercaseString

?? ? ? ?

? ? ? ? if (cString.hasPrefix("#")) {

? ? ? ? ? ? cString = (cString as NSString).substringFromIndex(1)

? ? ? ? }

? ? ? ? let rString = (cString as NSString).substringToIndex(2)

? ? ? ? let gString = ((cString as NSString).substringFromIndex(2) as NSString).substringToIndex(2)

? ? ? ? let bString = ((cString as NSString).substringFromIndex(4) as NSString).substringToIndex(2)

?? ? ? ?

? ? ? ? var r:CUnsignedInt = 0, g:CUnsignedInt = 0, b:CUnsignedInt = 0;

? ? ? ? NSScanner(string: rString).scanHexInt(&r)

? ? ? ? NSScanner(string: gString).scanHexInt(&g)

? ? ? ? NSScanner(string: bString).scanHexInt(&b)

? ? ? ? return UIColor(red: CGFloat(r) / 255.0, green: CGFloat(g) / 255.0, blue: CGFloat(b) / 255.0, alpha: CGFloat(1))

? ? }


eg:

self.setTitleColor(UIColorFromRGB("0xec8c00"), forState: .Selected)


0 回復 有任何疑惑可以回復我~
#1

恩格貝 提問者

非常感謝!
2016-04-27 回復 有任何疑惑可以回復我~

已用粗體標出。

0 回復 有任何疑惑可以回復我~

func UIColorFromRGB (hex:String) -> UIColor {???????
??????? var cString:String = hex.trimmingCharacters(in: NSCharacterSet.whitespacesAndNewlines)
??????? if (cString.hasPrefix("#")) {????????
??????????? cString = (cString as NSString).substring(from: 1)
??????? }????
??????? let rString = (cString as NSString).substring(to: 2)
??????? let gString = ((cString as NSString).substring(from: 2) as NSString).substring(to: 2)
??????? let bString = ((cString as NSString).substring(from: 4) as NSString).substring(to: 2)
??????? var r:CUnsignedInt = 0, g:CUnsignedInt = 0, b:CUnsignedInt = 0;
??????? Scanner(string: rString).scanHexInt32(&r)
??????? Scanner(string: gString).scanHexInt32(&g)
??????? Scanner(string: bString).scanHexInt32(&b)
??????? return UIColor(red: CGFloat(r) / 255.0, green: CGFloat(g) / 255.0, blue: CGFloat(b) / 255.0, alpha: CGFloat(1))?
??? }
這些需要改動的。

0 回復 有任何疑惑可以回復我~

親測,可以使用謝謝!不過swift3的語法略微有些變化,需要稍微修改下。

0 回復 有任何疑惑可以回復我~

這個還需要轉換成UIColor里面三色才能使用

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

請問老師在swift 語言中怎樣直接使用16進制的色值

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號