개발 창고/iOS

[SwiftUI] How to Fix a Theme with Dark or Light

로이제로 2023. 11. 27. 22:00
반응형

 

How to fix a theme with Dark or Light

개발을 한참 진행하던 중에 preview 화면에서는 원하는 데로 결과가 나옵니다.

preview 화면

 그런데 실제 어플에 build를 해서 테스트해보면

DarkMode에 따른 UI 차이

몹시 당황스러운 결과를 맞이하곤 합니다.

이 이유는 특정 테마 또는 배경, 전경을 지정해주지 않으면 사용자가 사용하는 테마에 따라 View의 색상이 지정되면서 발생하는 문제인데, 전체적으로 색상을 지정하지 않을게 아니라면 (저는 제목이다 서브 제목 등에 색상을 지정하였습니다.) 테마를 고정해 주는 게 좋습니다.

 

적용방법

Apple 개발자 사이트에서는 어떻게 설정해야 하는지 방법이 나와있으니 참고 바랍니다.

https://developer.apple.com/documentation/bundleresources/information_property_list/uiuserinterfacestyle/

Target에서 User Interface Style을 Light로 지정

 저는 아래와 같은 순서로 진행했습니다.

  1. 프로젝트 선택
  2. TARGET 선택
  3. Build Settings
  4. 우측 검색 창에 "User Interface Style" 입력
  5. 값을 "Light" 입력

우선순위는 Target에 있지만 Project에서도 동일하게 적용가능합니다.

Project의 User Interface Style를 Light로 지정

 

결과 화면

Light Style이 적용된 화면

 

반응형