iOS

[iOS] iOS 13.0 DarkMode Check (Widget 포함)

i-moo 2019. 8. 30. 16:07
반응형

 

iOS 13.0에 다크모드가 새로 나왔습니다.

앱에서 BackgroundColor를 주었으면 크게 상관없지만 BackgroundColor를 주지 않았으면 다크모드 백그라운드가 적용됩니다.

UITextField 에서 Placeholder도 색상을 따로 적용해주지 않았다면 다크모드 대응되도록 밝은 컬러로 변경되었습니다.

iOS 13.0 다크모드일 경우에 앱 BackgroundColor부터 싹 다크모드 대응을 해주기로 하였습니다.

 

ModeManager

클래스 하나에서 모두 관리하기 위해서 ModeManager를 구현하였습니다.

 

 

 

iOS 13.0 DarkMode Check

    if (@available(iOS 13.0, *)) {

            if (UIApplication.sharedApplication.delegate.window.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) {

                // DarkMode

            }

    }

 

iOS 13.0 DarkMode Widget Check

 

Widget에서 UIApplication.sharedApplication 접근이 안된다.

    if (@available(iOS 13.0, *)) {

            if (self.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) {

                // DarkMode

            }

    }

 

반응형