Color Asset 사용하기
간단합니당
만들기
이건 내가 만들어 뒀으니 열분은 안 만들어도 됩니도 !!! Colors.xcassets
입니다
색상 추가하기
+
버튼 누르고 Color Set
추가를 해줍니다
그러면 이렇게 색상이 추가되는데, Any Appearance에는 기본 색상을,
Dark Appearance에는 해당 색이 다크모드에서 나타날 색상을 넣어주면 됩니다 ~!
당연히 이름도 적절히 바꿔줘야겠져 보통 UpperCamelCase를 쓰는 것 같더라고요,,
색상 지정을 원하는 Appearance를 클릭한 후 오른쪽 패널에
여기서 조절해주면 됩니당 Show Color Panel 버튼을 누르면
hex color로도 입력할 수 있어요 ~.~
사용하기
코드에서 사용하는 법!
UIColor
의 init
함수를 사용합니다.
init?(named name: String)
UIColor(named: "BabyPink")
이렇게여. 예시를 보자면,,
이렇게 Color Asset에 색상들을 추가해줬다면!
전 원래 요런 함수를 만들어 놨는데 말이져
func createColorSets() {
colorSets.append([UIColor(hex:0x618AC0).cgColor, UIColor(hex:0x3C7A87).cgColor])
colorSets.append([UIColor(hex:0x3C7A87).cgColor, UIColor(hex:0x37938D).cgColor])
colorSets.append([UIColor(hex:0x37938D).cgColor, UIColor(hex:0x277473).cgColor])
colorSets.append([UIColor(hex:0x277473).cgColor, UIColor(hex:0x2C607A).cgColor])
colorSets.append([UIColor(hex:0x2C607A).cgColor, UIColor(hex:0x194576).cgColor])
colorSets.append([UIColor(hex:0x194576).cgColor, UIColor(hex:0x081A3F).cgColor])
colorSets.append([UIColor(hex:0x081A3F).cgColor, UIColor(hex:0x051B28).cgColor])
currentColorSet = 0
}
저 한 줄을 이렇게 바꿀 수 있겠죠~! (hex extension 함수 사용한거임)
colorSets.append([UIColor(named: "Gradient1")!.cgColor, UIColor(named: "Gradient2")!.cgColor])
근데 이건 좀 약간 위험해보이고(?) 암튼.. 아래처럼도 쓸 수 있어요.
UIColor+Extension.swift 파일에 아래와 같은 static 상수들을 선언 해 놓는거져
extension UIColor {
static let Gradient1: UIColor = UIColor(named: "Gradient1")!
}
모 이렇게? 그리고 사용할 땐 아래처럼 자동완성도 뜨고요~
colorSets.append([UIColor.Gradient1.cgColor, UIColor.Gradient2.cgColor])
이런 식이 되겠죠 ~! xcode에서 보면
위의 두 줄이 젤 깔끔 ~^___^