以下是详细信息。 我有没有背景的活动。但这不是问题。在主题或代码中设置背景可绘制或颜色都没有解决问题。
活动具有软输入模式adjustPan|stateAlwaysHidden
我还在代码
中为活动的装饰视图设置了这些标志View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
我尝试在主题中明确将颜色设置为导航栏,如此
<item name="android:navigationBarColor" tools:targetApi="lollipop">@color/chat_bg</item>
<item name="android:windowDrawsSystemBarBackgrounds" tools:targetApi="lollipop">true</item>
但没有成功(
我只能在我的LG Nexus 5X上重现它。在其他设备上我试过导航栏显示颜色。
答案 0 :(得分:0)
我今天遇到了完全相同的问题。在我的情况下,这是因为我的活动使用的主题是一个源自Theme.AppCompat.NoActionBar
的主题。问题不在于自定义主题,而是来自AppCompat库中的问题。当我将自定义样式的父级更改为:@android:style/Theme.NoTitleBar.Fullscreen
时,它开始显示纯黑色背景颜色,这比透明更令人满意。我同意这看起来像一个小故障。
我希望这将有助于未来的某些人,因为我知道这是一个迟到的答案。
答案 1 :(得分:0)
我很久以前找到了这个解决方案。也许现在可以为您提供帮助
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
}