我正在尝试制作一个安卓启动器。我想实现一个完全透明的状态栏和导航栏,这是我的主题xml文件。
<resources>
<style name="Theme" parent="android:Theme.Material.Wallpaper.NoTitleBar">
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:navigationBarColor">@android:color/transparent</item>
<item name="android:windowTranslucentStatus">false</item>
<item name="android:windowTranslucentNavigation">false</item>
</style>
</resources>
最后两项不起作用,棒棒糖上仍然有阴影。
This is what it looks like(note there is actually a shadow on status bar and navigation bar):
我想要实现的目标(nova启动器):
如何使状态栏和导航栏“透明”而不是“半透明”?
Update
您可以通过设置在 KitKat 上以编程方式实现相同的效果FLAG_LAYOUT_NO_LIMITS
内的标志Window
.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
Window w = getWindow(); // in Activity's onCreate() for instance
w.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
}
如果您设置了后台资源(就像颜色或图片一样)到您的布局,您将看到状态栏“下方”的颜色或图片。
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">@color/primary_dark</item>
原答案
看起来像android:windowTranslucentStatus
and android:windowTranslucentNavigation
应该true
代替false
<resources>
<style name="Theme" parent="android:Theme.Material.Wallpaper.NoTitleBar">
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:navigationBarColor">@android:color/transparent</item>
<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowTranslucentNavigation">true</item>
</style>
</resources>
此外,您的透明活动/容器布局需要设置此属性:
android:fitsSystemWindows="true"
[来源][1]
[1]:https://stackoverflow.com/a/29311321/1549700
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)