如何使状态栏透明,文本颜色为灰色?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使状态栏透明,文本颜色为灰色?相关的知识,希望对你有一定的参考价值。
我试图使状态栏完全透明,我成功了,但问题是背景是白色的,这使状态栏文本和图标不可读!所以我想让它变成深灰色。
这使状态栏透明并保持导航按钮可见。
if (VERSION.SDK_INT >= VERSION_CODES.KITKAT) {
Window w = getWindow();
w.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
if (VERSION.SDK_INT >= VERSION_CODES.LOLLIPOP) {
w.setStatusBarColor(Color.TRANSPARENT);
}
}
这应该使状态栏文本和图标变灰,但它没有,因为上面的代码阻止它..!我想实现两者!
<item name="android:windowLightStatusBar">true</item>
答案
尝试将此添加到您的应用程序中
<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowTranslucentNavigation">true</item>
然后尝试将此添加到onCreate()
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
Window w = getWindow();
w.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
}
以上是关于如何使状态栏透明,文本颜色为灰色?的主要内容,如果未能解决你的问题,请参考以下文章
在片段中使用 CoordinatorLayout 时如何使状态栏透明