티스토리 뷰

반응형

안드로이드 개발 뿐만 아니라 자바 스크립트(또는 CSS) 에서 UI 작업 시 색상값으로 지정하여 사용한 적이 많았습니다.


직접 스토리 보드에서 색상값 지정이 아닌 코드에서 작성하는 방법을 공유 하겠습니다.


[SWIFT3]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
//색상 값 입력 시 UIColor로 리턴
class func hexStringToUIColor (hex:String-> UIColor {
    var cString:String = hex.trimmingCharacters(in: .whitespacesAndNewlines).uppercased()
    
    if (cString.hasPrefix("#")) {
        cString.remove(at: cString.startIndex)
    }
    
    if ((cString.count) != 6) {
        return UIColor.gray
    }
    
    var rgbValue:UInt32 = 0
    Scanner(string: cString).scanHexInt32(&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)
    )
}


모듈화 목적으로 Class Function으로 만들었습니다. 


다양한 색상을 구현하는데 도움이 되길 바라겠습니다. 




참고

https://stackoverflow.com/questions/1560081/how-can-i-create-a-uicolor-from-a-hex-string



반응형
댓글