iOS 공부하는 감자

iOS) 다크모드 대응하기 본문

iOS

iOS) 다크모드 대응하기

DongTaTo 2022. 7. 6. 23:24
반응형

다크모드는 iOS 13.0 업데이트로 생겨났다.

 

지금은 프로젝트를 생성하면 다크모드를 지원하는게 기본 설정이지만, (다크모드)지원 여부를 개발자가 프로젝트 설정에서 선택할 수 있다.

 

프로젝트에서 다크모드를 잘 대응하기 위해서는 라이트모드와 다크모드에서 각각 사용될 수 있도록 색상, 이미지, 아이콘 등 요소에 별도 관리가 필요하다.

 

 

UIColor에서 다양한 색을 기본 지원하고 있는데, 다크모드를 지원하는 색상과 그렇지 않은 색상이 있다.

이름 앞에 System이 붙은 색상들은 다크모드를 지원해서, 사용자의 디바이스 설정에 따라 색상을 자동 변경해서 보여준다.

 

예를 들어.. System Background Color를 사용했다면 라이트모드에서는 흰색, 다크모드에서는 검정색으로 표현한다.

 

 

 

 

만약 개발자가 원하는 색상 조합(?)이 있다면 추가해서 사용할 수 있다.

 

1. Assets파일에서 우클릭 + New Color Set을 선택한다.

 

 

 

2. 생성할 Color Set의 이름을 정해준다.

 

 

 

3. Any Appearance와 Dark에 원하는 색상값을 넣어준다.

Dark는 다크모드 상태에서 보여줄 색상,

Any Appearance는 다크모드를 제외한 모드에서 보여줄 색상을 의미한다. (right모드, iOS 13.0미만 버전에서의 색상)

 

만약 Dark모드, Right모드, iOS 13.0 미만 버전에서 보여줄 색상을 각각 다르게 설정하고 싶다면 

인스펙터 영역에서 Appearances 속성의 값을 Any, Light, Dark로 변경한다.

 

 

4. 추가된 색상 확인

 

 

 

 

 

 

이미지도 동일한 방법으로 다크모드를 대응한다.

인스펙터 영역의 Appearances 속성을 변경하면 다크모드에 대응할 수 있도록 이미지 칸(?)이 자동 추가된다.

 

 

 

 

 

 

 


 

다크모드를 지원하지 않도록 설정하기

Info.plist파일에서 Appearance Key를 추가하고, Value값으로 Light를 입력한다.  (대문자 주의)

 

반응형

'iOS' 카테고리의 다른 글

iOS) App · ViewController의 생명주기  (0) 2022.07.13
iOS) IBOutlet연결 Strong VS Weak  (0) 2022.07.07
iOS) this class is not key value coding-compliant for the key ...  (0) 2022.07.05
UIButton in iOS 15.0  (0) 2022.07.04
Entry Point  (0) 2022.07.04