[TIL] UIColor Extension으로 간단하게 커스텀 색상 사용하기

Eden·4일 전
1

TIL

목록 보기
88/92
post-thumbnail

사용법

// 사용한 컬러 hex 값.
extension UIColor {
    static let mainRed = UIColor(red: 190/255, green: 30/255, blue: 40/255, alpha: 1.0)
    static let darkRed = UIColor(red: 120/255, green: 30/255, blue: 30/255, alpha: 1.0)
    static let cellBackground = UIColor(red: 245/255, green: 245/255, blue: 235/255, alpha: 1.0)
}

UIColor 확장을 사용하면 UIColor를 명시하지 않고도 확장한 색상에 바로 접근할 수 있다. UIColor.mainRed 대신에 .mainRed로 사용할 수 있다.

view.backgroundColor = .mainRed

이게 왜 돼?

  • Swift의 타입 추론 덕분에 .mainRedUIColor extension의 속성인지 자동으로 파악할 수 있다고 한다.
  • 근데 명확하게 UIColor.mainRed라고 작성해도 동일하게 동작하며, 가독성을 높일 수 있는 방법이라고 한다.

그럼 언제 명시적으로 사용하면 괜찮을까?

view.backgroundColor = UIColor.mainRed

코드의 명확성이 필요할 때

협업 상황에서 팀원들이 어디서 정의된 것인지 쉽게 이해할 수 있도록 사용한다.

다른 네임스페이스와 충돌 가능성이 있을 때

동일한 이름의 속성이 다른 확장에서 존재할 수 있는 경우에 사용한다.

profile
Frontend🌐 and iOS

0개의 댓글