Android 11 (API 30) 中的导航栏不完全透明

问题描述

由于 getwindow().setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS,WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS); 在 Android API 30 中不起作用。我尝试了此 tutorial 中的另一个代码

 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            getwindow().getDecorView().setsystemUIVisibility(View.SYstem_UI_FLAG_LAYOUT_STABLE | View.SYstem_UI_FLAG_LAYOUT_HIDE_NAVIGATION);
            getwindow().setNavigationBarColor(Color.TRANSPARENT);
        }

但是导航栏不是完全透明的 (img),就像在 Google 应用中一样。 如何实现完全透明的导航栏?

解决方法

因为它经常出现,你自己找到了解决方案。
我在此 tutorial 中找到了解决方案。
您只需要通过主题中的此代码 <item name="android:enforceNavigationBarContrast">false</item> 禁用自动系统内容保护。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...