728x90
안드로이드에서 status bar 색을 설정하고 싶을 땐 styles.xml에서 colorPrimaryDark item의 색을 설정해주시면 됩니다.
어두운 색일 때는 별 다른 문제가 없지만 status bar 색을 밝은 색으로 한다면 문제가 생깁니다.
colorPrimaryDark의 색을 #FFFFFF, 하얀색으로 설정해보았습니다.
status bar의 색이 하얀색이 되면서 status bar 아이콘들이 보이지 않습니다.
이럴 때는 styles.xml에서 android:windowLightStatusBar를 true로 설정해주시면 됩니다.
아이콘들이 정상적으로 보이게 됩니다.
문제는 API 23 미만에서 발생합니다.
android:windowLightStatusBar가 API 23부터 지원을 하게 되기 때문에 그 미만의 API에서도 status bar의 색을 바꾸기 바란다면 밝은 색을 피해 주셔야 합니다.
참고로 API 21 미만은 status bar 색을 바꾸는 것을 지원하지 않기 때문에 기본 status bar 색인 검은색에서 다른 색으로 변경할 수 없습니다.
정리하자면 안드로이드에서 status bar를 바꾸고 싶을 때
- API 23 ~ : colorPrimaryDark의 색을 설정하면 됩니다. 만약 밝은 색으로 설정할 경우 android:windowLightStatusBar를 true로 설정해주세요.
- API 21 ~ 22 : colorPrimaryDark의 색을 설정해주면 됩니다. android:windowLightStatusBar가 지원되지 않기 때문에 밝은 색으로 설정할 경우 아이콘이 안 보일 수 있습니다.
- ~ API 20 : status bar의 색을 변경할 수 없습니다.
728x90
'안드로이드' 카테고리의 다른 글
안드로이드 테두리 있는 Round Button 만들기 (0) | 2020.08.18 |
---|---|
안드로이드 custom app bar left margin 없애는 법 (0) | 2020.08.17 |
안드로이드 글꼴 적용하는 방법 (0) | 2020.08.12 |
안드로이드 로드맵 2020 (0) | 2020.07.01 |