https://developer.android.com/training/material/theme.html#StatusBar에서 상태 표시 줄을 투명하게 표시하는 방법에 대한 다양한 시도와 오류가 있었지만별로 운이 없었습니다. 그들이 여기Android 5.0 반투명 상태 표시 줄
http://www.google.com/design/spec/style/imagery.html#imagery-best-practices에 표시되는 것처럼 반투명 상태 표시 줄과 탐색 서랍, 단지 평면과 간단한 활동을하지 않을
는 자바 내 디자인
<style name="AppTheme" parent="android:Theme.Material.NoActionBar">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
<item name="android:windowActionBar">false</item>
<!-- your app branding color for the app bar -->
<item name="android:colorPrimary">@android:color/transparent</item>
<!-- darker variant for the status bar and contextual app bars -->
<item name="android:colorPrimaryDark">@android:color/transparent</item>
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:fitsSystemWindows">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowTranslucentNavigation">true</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
</style>
및 코드
getWindow().setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS,
WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
getWindow().getAttributes().flags &= (~WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
getWindow().setStatusBarColor(Color.TRANSPARENT);
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE);
나는 ScrimInsetsFrameLayout을 사용하는 것을 포함하여 많은 stackoverflow 답변을 통과했지만, 아무것도 간단한 것 같은 것을 달성하는 것처럼 보이지 않습니다. 정확한 규칙을 낮추십시오.
상태 표시 줄 뒤에 직접 그릴 수도 있습니다. 예를 들어 사진 위에 상태 표시 줄을 투명하게 표시하려면 흰색 상태 아이콘이 보이도록 미묘한 어두운 그라데이션을 사용하십시오. 그렇게하려면 android : statusBarColor 속성을 @android : color/transparent로 설정하고 필요에 따라 창 플래그를 조정하십시오. 또한 애니메이션이나 페이딩을 위해 Window.setStatusBarColor() 메서드를 사용할 수 있습니다. 참고 : 상태 막대는 거의 항상 주 도구 모음에서 명확하게 구분되어야합니다. 단,이 막대 뒤에 가장자리가있는 풍부한 이미지 또는 미디어 내용을 표시하고 그래디언트를 사용하여 아이콘이 계속 표시되는지 확인해야합니다 .