안드로이드/ 상태바 색 변경하기

yellow·2021년 4월 16일
0

안드로이드

목록 보기
1/6

상태바 색상 변경하기

  1. res/values/themes/themes.xml로 가기
  • 맨 처음 앱 템플릿을 내비게이션 드로어로 설정하고 아무것도 바꾸지 않았을 때
<style name="Theme.Practice" parent="Theme.MaterialComponents.DayNight.DarkActionBar">

        <!-- Primary brand color. -->
        <item name="colorPrimary">@color/purple_500</item>
        <item name="colorPrimaryVariant">@color/purple_700</item>
        <item name="colorOnPrimary">@color/white</item>
        
        <!-- Status bar color. -->
        <item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
        <!-- Customize your theme here. -->
    </style>

이런 식으로 상태바 색깔을 지정할 때 바로 16진수의 색깔을 넣어주는 게 아니라, 위 코드 세번째 줄에서 colorPrimaryVariant에 색깔을 지정해주고, colorPrimaryVariant를 가져오는 식으로 상태바 색깔을 지정해주더라...
그런데 구글링해보니까 colorPrimaryVariant는 각 이름들의 색상의 그림자라고 한다.
상태바 부분과 액션바 부분을 구분해주려고 상태바 색깔을 액션바 부분보다 좀 더 어두운 색을 사용하는데, 그래서 그림자색깔이라고 표현하는 듯....
굳이 저렇게 할 필요는 없는 것 같다.

상태바 배경 색깔 변경하기

  1. 원하는 색깔 16진수로 어떻게 표현하는지 알아두기
  2. colors.xml에 해당 색 넣어두기
    (사실 이렇게 하는 게 맞는지는 모르겠다...^^)
<color name="light_yellow">#FFF8ED8B</color>
  1. 상태바 전체 색깔 변경하기
<item name="android:statusBarColor" tools:targetApi="l">@colors/light_yellow</item>

상태바 글자 색깔 변경하기

  • 안드로이드 마시멜로 / api23 부터 사용 가능하다고 한다.
  • true이면 검은색, false이면 흰색이다.
<item name="android:windowLightStatusBar" tools:targetApi="m">true</item>
profile
할 수 있어! :)

0개의 댓글