• Jan
  • Feb
  • Mar
  • Apr
  • May
  • Jun
  • Jul
  • Aug
  • Sep
  • Oct
  • Nov
  • Dec
  • Sun
  • Mon
  • Tue
  • Wed
  • Thu
  • Fri
  • Sat
  • 27
  • 28
  • 29
  • 30
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

Color Asset 사용하기

간단합니당

만들기

image

이건 내가 만들어 뒀으니 열분은 안 만들어도 됩니도 !!! Colors.xcassets 입니다

색상 추가하기

image

+ 버튼 누르고 Color Set 추가를 해줍니다

image

그러면 이렇게 색상이 추가되는데, Any Appearance에는 기본 색상을,
Dark Appearance에는 해당 색이 다크모드에서 나타날 색상을 넣어주면 됩니다 ~!
당연히 이름도 적절히 바꿔줘야겠져 보통 UpperCamelCase를 쓰는 것 같더라고요,,

image

색상 지정을 원하는 Appearance를 클릭한 후 오른쪽 패널에

image

여기서 조절해주면 됩니당 Show Color Panel 버튼을 누르면

image

hex color로도 입력할 수 있어요 ~.~

사용하기

코드에서 사용하는 법!
UIColorinit 함수를 사용합니다.

init?(named name: String)

UIColor(named: "BabyPink") 이렇게여. 예시를 보자면,,

image

이렇게 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")!
}

모 이렇게? 그리고 사용할 땐 아래처럼 자동완성도 뜨고요~

image

colorSets.append([UIColor.Gradient1.cgColor, UIColor.Gradient2.cgColor])

이런 식이 되겠죠 ~! xcode에서 보면

image

위의 두 줄이 젤 깔끔 ~^___^