안드로이드 상태바 투명 처리

|

안드로이드 상태바를 투명하게 만드는 방법입니다.

대충 안드로이드 상태바는 다음과 같은 형태로 표현할 수 있습니다.

1) 아무런 설정을 안 해줬을 때의 기본적인 상태바

image

2) 색상을 입힌 상태바

image

3) 투명 처리를 한 상태바

image

과거에는 완전히 투명한 상태바도 표현할 수 있었는데, 지금은 반투명 상태로 표현되고 있습니다.


일단, 반투명 상태의 상태바는 다음과 같은 테마를 적용하여 구현할 수 있습니다.


styles.xml

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
  <!-- Customize your theme here. -->
  <item name="colorPrimary">@color/colorPrimary</item>
  <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
  <item name="colorAccent">@color/colorAccent</item>
  <item name="android:windowDrawsSystemBarBackgrounds">true</item>
  <item name="android:statusBarColor">@color/transparent</item>
  <item name="android:windowTranslucentStatus">true</item>

</style>


때에 따라서 반투명 상태보다는 색상을 입힌 상태바가 더 좋을 때가 있습니다. 상태바의 색상을 primaryColor와 똑같이 지정하면 투명 상태처럼 보이기도 합니다. 그럴 때는

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
  <!-- Customize your theme here. -->
  <item name="colorPrimary">@color/colorPrimary</item>
  <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
  <item name="colorAccent">@color/colorAccent</item>
  <item name="android:windowDrawsSystemBarBackgrounds">true</item>
  <item name="android:statusBarColor">@color/colorPrimary</item>
  <item name="android:windowTranslucentStatus">false</item>

</style>

와 같이 지정해주면 됩니다.