【问题标题】:Android Programming: How to make navigation bar fully transparent in Android NougatAndroid 编程:如何在 Android Nougat 中使导航栏完全透明
【发布时间】:2017-08-31 08:05:24
【问题描述】:

我想让导航栏在我的应用中完全透明。我已经尝试过其他答案,但它们只会使状态栏完全透明,而导航栏仍然是深色的半透明颜色。这是我的代码:

styles.xml:

<style name="AppTheme" parent="android:Theme.Material.Light.NoActionBar">
    <item name="android:windowTranslucentStatus">true</item>
    <item name="android:windowTranslucentNavigation">true</item>
    <item name="android:navigationBarColor">@android:color/transparent</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>

Activity.java:

getWindow().setFlags(
    WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS,
    WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);

这是我想要得到的结果:goal

这是我目前得到的结果:result

有没有办法实现全透明的导航栏?

【问题讨论】:

  • 您是否尝试过使用FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS 标志?

标签: android android-navigation-bar


【解决方案1】:

尝试将&lt;item name="android:android:windowTranslucentStatus"&gt;true&lt;/item&gt; 设置为android:statusBarColor@android:color/transparent

然后在下面添加代码:

getWindow().getDecorView().setSystemUiVisibility(
        View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);

如果您还希望导航栏是半透明的,请将android:navigationBarColor 设置为@android:color/transparent 并结合标志View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

试试吧,它会起作用的。

【讨论】:

    猜你喜欢
    • 2016-10-27
    • 1970-01-01
    • 2019-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-26
    相关资源
    最近更新 更多