//16進製制字串轉成uicolor
import uikit
class lybcolorextention: nsobject
//方法一:使用:
"#eeeeee".touicolor()
extension string
if cstring.hasprefix("#")
//字元chuan擷取
var range = nsrange()
range.location = 0
range.length = 2
let rstring = (cstring as nsstring).substring(with: range)
range.location = 2
let gstring = (cstring as nsstring).substring(with: range)
range.location = 4
let bstring = (cstring as nsstring).substring(with: range)
//儲存轉換後的數值
var r:uint32 = 0,g:uint32 = 0,b:uint32 = 0
//進行轉換
scanner(string: rstring).scanhexint32(&r)
scanner(string: gstring).scanhexint32(&g)
scanner(string: bstring).scanhexint32(&b)
//根據顏色值建立uicolor
return uicolor(red: cgfloat(r)/255.0, green: cgfloat(g)/255.0, blue: cgfloat(b)/255.0, alpha: 1.0) }
//方法二;"".color
var color: uicolor
let a, r, g, b: int32
switch hex.count
return uicolor(red: cgfloat(r) / 255.0, green: cgfloat(g) / 255.0, blue: cgfloat(b) / 255.0, alpha: cgfloat(a) / 255.0)
} else
return uicolor(red: cgfloat(r) / 255.0, green: cgfloat(g) / 255.0, blue: cgfloat(b) / 255.0, alpha: cgfloat(a) / 255.0)}}
}uicolor.init(hexstring: "#88eeee")
extension uicolor
//// if cstring.hasprefix("#")
//// //字元chuan擷取
// var range = nsrange()
// range.location = 0
// range.length = 2
//// let rstring = (cstring as nsstring).substring(with: range)
//// range.location = 2
// let gstring = (cstring as nsstring).substring(with: range)
//// range.location = 4
// let bstring = (cstring as nsstring).substring(with: range)
//// //儲存轉換後的數值
// var r:uint32 = 0,g:uint32 = 0,b:uint32 = 0
// //進行轉換
// scanner(string: rstring).scanhexint32(&r)
// scanner(string: gstring).scanhexint32(&g)
// scanner(string: bstring).scanhexint32(&b)
// //根據顏色值建立uicolor
// self.init(red: cgfloat(r)/255.0, green: cgfloat(g)/255.0, blue: cgfloat(b)/255.0, alpha: 1.0)
// }
//方法四
class func hexcolor(hex:string) -> uicolor
if ((cstring.count) != 6)
var rgbvalue:uint64 = 0
scanner(string: cstring).scanhexint64(&rgbvalue)
return uicolor(
red: cgfloat((rgbvalue & 0xff0000) >> 16) / 255.0,
green: cgfloat((rgbvalue & 0x00ff00) >> 8) / 255.0,
blue: cgfloat(rgbvalue & 0x0000ff) / 255.0,
alpha: cgfloat(1.0))}
}
16進製制顏色
r g b 紅 綠 藍 0 0 0 偏向色系 顏色寫法一般有 background red background ff0000 background rgb 255,0,0 background red 是直接用對應的英語單詞 background ff0000 是用16進製制來表達顏色 也可以寫成...
16進製制顏色碼
對於上面提到的第一種顏色,即發光體的顏色模式,又稱為 加色模式 三原色 是 紅 綠 藍 三種顏色。加色模式又稱為 rgb模式 而對於印刷品這樣的顏色模式,又稱為 減色模式 它的三原色是 青 洋紅 黃 三種顏色。減色模式又稱為 cmyk 模式。例如,在網頁上要指定一種顏色,就要使用rgb模式來確定,方...
使用16進製制顏色值
通常情況下我們是直接使用類似於 ee1289這樣的 來直接表示rgb顏色的 uicolor colorwithred 0xee 255.0 green 0x12 255.0 blue 0x89 255.0 alpha 1 這樣呼叫真是太繁瑣了,所以封裝了乙個小方法來直接呼叫 獲取顏色 uicolor...