안드로이드 상태바 투명 처리
14 Apr 2017 | Android UX안드로이드 상태바를 투명하게 만드는 방법입니다.
대충 안드로이드 상태바는 다음과 같은 형태로 표현할 수 있습니다.
1) 아무런 설정을 안 해줬을 때의 기본적인 상태바
2) 색상을 입힌 상태바
3) 투명 처리를 한 상태바
과거에는 완전히 투명한 상태바도 표현할 수 있었는데, 지금은 반투명 상태로 표현되고 있습니다.
일단, 반투명 상태의 상태바는 다음과 같은 테마를 적용하여 구현할 수 있습니다.
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>
와 같이 지정해주면 됩니다.