728x90
안드로이드 상태바를 투명하게 만드는 방법입니다.
대충 안드로이드 상태바는 다음과 같은 형태로 표현할 수 있습니다.
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>
와 같이 지정해주면 됩니다.
Activity에서 StatusBar아래로 버튼등이 나와야 한다면 해당하는 layout에 하단내용 기입.android:fitsSystemWindows="true"
728x90
'개발 > Adroid' 카테고리의 다른 글
[android] 레이아웃 (0) | 2019.09.12 |
---|---|
[android studio] 코드가 입력될 때 자동으로 import (0) | 2019.09.12 |
[android] 앱 아키텍처 가이드 (0) | 2019.09.01 |
[android] 새로운 종속성 구성 사용 (0) | 2019.08.31 |
[android] build.gradle (0) | 2019.08.30 |
댓글