是否可以将背景图片应用于底部导航视图而不仅仅是状态栏?

3
我在各处搜索,但没有得到任何帮助。我想使用一个背景图片作为全屏幕,它将覆盖状态栏和底部导航,同时具有带有返回按钮、主页按钮和任务切换器按钮的导航栏。
像下面这张图片:

Nexus 5 Home Screen

1个回答

5
透明的导航栏适用于Android 4.4+(API 19)(就像状态栏一样)。

values/styles.xml

<style name="FullScreenEffectTheme" parent="Theme.AppCompat.NoActionBar">
    <!-- ... -->
</style>

values-v19/styles.xml

<style name="FullScreenEffectTheme">
    <!-- StatusBar -->
    <item name="android:statusBarColor">@android:color/transparent</item>
    <!-- NavigationBar -->
    <item name="android:navigationBarColor">@android:color/transparent</item>
</style>

在代码中设置标志:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    getWindow().getDecorView().setSystemUiVisibility(
         View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
         View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION);
}

不要忘记将此样式设置为活动:

然后您需要向布局添加填充或空间

重要提示:如果您想在手机上使用横向方向,半透明导航栏会引起丑陋的问题,在这种情况下,您应该关闭此功能。我像Tanner Perrien在这里所解释的那样解决了它。


我已经按照你的方法在导航栏中设置了背景图片,但问题是在页脚有一个透明的黑色条,我该如何去掉它?这个问题在我发布的图片中看不到。 - Pankaj
立即检查。请注意,我删除了两个样式项。 - paulina_glab

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接