21.01.04 다크모드 대응 (하단 참고) - [ 수정 ]
devddong.tistory.com/27?category=828276
오랜만에 개인 프로젝트 앱에 접속해 확인하던중 ( 사실 앱스토어 업로드 습작이라 기능이 볼것도 없음 ㅎ )
유도하지 않게 다크모드에 적용된 부분을 발견했다.
SearchBar와 superView의 색상이 바로 해당 부분이다.
그래서 오늘은 이부분을 수정하는 과정을 포스팅 하려한다.
아주 간단하게 해결이 가능한데
AppDelegate의 didFinishLaunchingWithOptions 메소드 내부에
아래와 같이 UserInterfaceStyle을 설정 하는 코드를 추가해준다.
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
if #available(iOS 13.0, *) {
self.window?.overrideUserInterfaceStyle = .light
}
return true
}
또는 infoplist에서 설정
그러면 Light 모드로 변경되어있는걸 볼 수 있다.
물론 userInterfaceStyle로 접근해서
현재 사용자의 userInterfaceStyle에 따라 분기를 태워 직접 색상을 설정 할수도 있고,
color를 지정할때 systemBackground로 설정하여
system이 결정하는 색상으로 설정 할수도 있다.
이런식으로 사용자의 환경에 맞게 앱이 최적화되어야 하는게 당연 사실이지만다크모드의 색상이 개인적으로 앱에 적용하고 싶은색상이 아니어서 라이트로 고정했다.
UITraitCollection.userInterfaceStyle
21.01.04 다크모드 대응 - [ 수정 ]
devddong.tistory.com/27?category=828276
다크모드를 사용하니깐 확실히 눈이 덜아픈걸 체감했다.
또한 전력 소모 감소와 사용자의 집중력 향상이라는
뛰어난 장점을 가지고 있다 한다.
개발자 개인의 취향이 아닌
Apple의 HIG가 제시하는 방향에 더욱더 주목하여
앱의 사용성에 있어 더 좋은 환경을 구성해나가야겠다.
'IOS' 카테고리의 다른 글
[IOS] UIColor Extension (0) | 2021.01.03 |
---|---|
[IOS] 키보드 내리기 with TextField (0) | 2020.12.23 |
[IOS] 이미지와 라벨을 같이 사용한 NavigationBarButtonItem (0) | 2020.12.21 |
[IOS] User Event & MainRunLoop (0) | 2020.12.19 |
[IOS] PickerView의 element를 직접구성하는 방법 (0) | 2020.12.15 |