프로그래밍/iOS

[XCode 11] iOS 13 다크모드 해제

gigas 2019. 12. 9. 07:00
728x90
반응형

 

iOS 13 버전이 되면서 다크모드가 새롭게 추가되었습니다.

 

하지만 개발자에게는 앱 유지보수를 해야하는데 정보를 몰라서 곤경에 처하곤 합니다.

 

간단하게 다크모드 옵션을 해제하는 방법을 알아보겠습니다.

 

 

Info.plist

Xcode에서 info.plist 에서 아래와 같이 값을 추가 합니다.

 

 

 

Source Code는 아래와 같습니다.

<key>UIUserInterfaceStyle</key>
<string>Light</string>

 

 

 

 

AppDelegate

overrideUserInterfaceStyle앱의 window변수 에 대해 설정할 수 있습니다 .

 

프로젝트 생성 방법에 따라 AppDelegate파일 또는 SceneDelegate에 있을 수 있습니다.

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

 

 

 

UIViewController

UIViewController를 개별적으로 선택 해제하려면 아래와 같이 viewDidLoad 메서드안에 작성할 수 있습니다.

override func viewDidLoad() {
    super.viewDidLoad()
    // overrideUserInterfaceStyle is available with iOS 13
    if #available(iOS 13.0, *) {
        // Always adopt a light interface style.
        overrideUserInterfaceStyle = .light
    }
}
728x90
반응형