티스토리 뷰

iOS

[iOS] 다크모드 제한 (iOS 13+)

Peppo 2022. 4. 15. 21:38
728x90

iOS 13 버전 부터 '다크 모드' 를 지원하게 되었는데요. 

 

이게 모드에 따라 색을 지정해주지 않으면 

난감한 상황이 나오게되는데 

 

일단 텍스트 필드를 예로들어볼게요.

 

일반모드와 다크모드 각각 적용한 화면인데요.

일반 모드
다크모드

 

사용자 입장에서 다크모드로 보면 저게 

텍스트필드인지 Label인지 버튼인지 알 수 없을겁니다. 

 

각자 색을 지정해주는 방법도 있지만 

오늘은 다크모드를 제한 하는 방법에 대해 알아 보겠습니다!

 


2가지 방법이 있습니다.

info.plist를 수정하는 방법

AppDelegate에서 수정하는 방법 

원하는 방법들중 골라서 사용하시면 됩니다. :) 

1. info.plist

 

아래와 같이 info.plist에 들어가서

 

Information Property List 우클릭Add rowAppearance 추가Value에 Light 입력 

 

 

2. AppDelegate 

didFinishLaunchingWithOptions 부분에 

 

아래의 코드를 추가 해줍니다.

iOS 13 이후 버전의 window에 일반모드 상태로 (Light) 나타내주겠다는 뜻이에요!!

if #available(iOS 13.0, *) {
  self.window?.overrideUserInterfaceStyle = .light
}

 

 

728x90