我想要一个半透明的状态栏和导航栏,其他颜色不能像蓝色或白色那样半透明
我的代码
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:navigationBarColor">@color/colorPrimary</item>
</style>
活动
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
Window w = getWindow();
w.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
}
状态栏半透明良好,但导航栏颜色不变。为什么?
导航栏
根据我对https://developer.android.com/reference/android/view/WindowManager.LayoutParams.html中“FLAG_LAYOUT_NO_LIMITS”的理解[窗口标志:允许窗口扩展到屏幕之外]这种标志的使用会将状态栏和导航栏推出窗口。事实上,使用您的style.xml文件并添加行
<color name="myWindowBackground">#D7DEB5</color>
要更改白色窗口背景,可以同时注意状态栏符号和导航栏符号,但不能注意它们的栏。此外,使用以下代码:
int statusBarColor = w.getStatusBarColor();
String hexStatusBarColor = String.format("#%08X", (0xFFFFFFFF & statusBarColor));
int navigationBarColor = w.getNavigationBarColor();
String hexNavigationBarColor = String.format("#%08X", (0xFFFFFFFF & navigationBarColor));
Log.d("FLAGS", "statusBarColor: " + hexStatusBarColor + " -- navigationBarColor: " + hexNavigationBarColor);
您可以看到,statusBarColor(“#00000000”完全透明)和navigationBarColor已正确设置,但自弹出窗口以来未显示。
现在,如果不使用标志“flag\u LAYOUT\u NO\u LIMITS”,您将获得一个透明的状态栏(与windowBackground颜色相同)和所需的导航栏颜色,但此时不确定代码使用此标志还试图获得什么。
检查我以前的答案,它肯定会帮助你得到结果。
您可以通过两种方式实现这一点——使用样式或活动。
values-v21/style。xml
<item name="android:navigationBarColor">@color/navigationbar_color</item>
在活动中使用Compat库-
if (Build.VERSION.SDK_INT >= 21) {
getWindow().setNavigationBarColor(ContextCompat.getColor(this, R.color.primary));
}
更改导航颜色的方法:
values-v21/style。xml
<item name="android:navigationBarColor">@color/blue_color</item>
程序上:
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().setNavigationBarColor(ContextCompat.getColor(this, R.color.primary));
}
在Android 5.0的指南中,导航栏似乎是可定制的:http://www . Google . com/design/spec/layout/structure . html # structure-system-bars 如何更改导航栏的颜色?我想用白色的。 编辑:在我的资源中,我测试了这种风格: 但是按钮是白色的。我想作为第二个图像相同的渲染器。
在我的应用程序中,我需要更改底部导航栏的颜色。我看了很多帖子,但没有找到解决办法。我正在使用appCompat库。 v21/样式。xml
如何在iOS 7中更改导航栏的颜色? 基本上,我想实现像推特导航条(更新推特为也就是说)这样的东西。我嵌入了一个导航条在一个的顶部。我想要的只是将导航条的颜色和顶部的实用工具条一起更改为浅蓝色。我似乎在我的中找不到一个选项。
问题内容: 我正在尝试更改导航器栏的颜色,但是我发现只有导航器是根导航器,这才是不可能的。 我正在尝试: 我所有与导航器控制器有关。但是什么都没有改变。实际上,我试图从情节提要中进行相同的操作,但只有在我处于第一个导航器中时,它才有效。 我试图阅读与此问题有关的所有内容,但一无所获 我可以像这样将任何项目添加到导航栏 问题答案: 实际上,我发现该解决方案将用于: 然后在每个视图控制器中,我们需要另
我尝试了很多方法来改变导航栏的颜色,比如 AndroidLollipop更改导航栏颜色 android更改导航栏颜色 如何更改系统导航栏颜色 什么都不管用 我将该项目添加到样式中。xml-使用Android 8.1 任何人都知道在Xamarin做这件事的最佳方式是什么。Android 更新:我在样式文件中尝试了以下代码
我想更改导航栏的颜色,但我不确定是否应该更改色调或背景。我知道iOS 7将采用更为平坦的设计(甚至建议删除渐变),但我很难理解这两种设计。即使我设置了背景色,它也没有任何作用。 在此图像中,背景设置为绿色,但条形图仍为蓝色: