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

cop*_*t13 6 android android-navigation-bar

因为getWindow().setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);在 Android API 30 中不起作用。我尝试了本教程中的另一个代码:

 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);
        }
Run Code Online (Sandbox Code Playgroud)

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

cop*_*t13 13

通常情况下,您会自己找到解决方案。我在本教程
中找到了解决方案。 您只需在主题中通过此代码禁用自动系统内容保护即可。
<item name="android:enforceNavigationBarContrast">false</item>