[SwiftUI]Color의 정리와 다크 모드 대응(초간단)

게시물의 경위



SwiftUI × 개인 개발에서 앱 내에서 사용하는 색 구성표를 관리할 때 사용한 방법을 게시합니다.

환경



Swift 버전 5.4.2
Xcode 버전 12.5.1

Colors.xcassets 만들기


File > New > File... 에서 Asset Catalog 를 선택하여 이번에는 Colors 라는 이름으로 새 파일을 만듭니다.


파일을 만든 후 아래 그림과 같이 New Color Set 로 색상을 추가합니다.



좌측이 라이트 모드 대응으로 우측이 다크 모드 대응입니다.
여기에서 설정한 색이 단말기의 라이트 or 다크로 자동으로 전환됩니다. 매우 편리하네요.

다음은 Colorsファイル 로 만든 색을 코드에서 사용할 수 있도록 설정합니다.

ColorManager 만들기


Colors 에서 만든 색을 코드로 처리하기 위해 새 파일을 만들고 ColorManager를 정의합니다.ColorManager 에서는 다음과 같이 정의합니다.
struct ColorManager {
    static let 定数名 = Color("Colorsで設定したColor名")
}

제 경우에는 다음과 같이 설정하고 있습니다. 참고로. .
struct ColorManager {
    static let baseColor = Color("base_color")
    static let mainColor = Color("main_color")
}

나중에 코드로 호출하면됩니다.

반영 방법



반영 방법은 다음과 같다.
ColorManager.baseColor
.foregroundColor(ColorManager.baseColor)
.background(ColorManager.baseColor)

UIColor로 설정하는 경우는 다음과 같습니다.
UIColor(ColorManager.baseColor)

포인트는 Color로 취급되는 포인트입니다. 참고하십시오.

공지



현재, iOS 개발 안건을 업무 위탁으로 모집중입니다(부업). TwitterDM에서 요청을 기다리고 있습니다.

좋은 웹페이지 즐겨찾기