Java 更改导航栏颜色,Android
在棒棒糖制作前的设备中,如何将导航栏的颜色/透明度从黑色更改为通用颜色(例如,状态栏或操作栏的颜色)Java 更改导航栏颜色,Android,java,android,xml,Java,Android,Xml,在棒棒糖制作前的设备中,如何将导航栏的颜色/透明度从黑色更改为通用颜色(例如,状态栏或操作栏的颜色) 我可以使用AppCompat进行设置吗?还是只适用于SDK 21?您可以在AppCompat主题中设置属性navigationBarColor,或者在本机v21主题中设置属性android:navigationBarColor <style name="AppTheme" parent="@style/Theme.AppCompat.Light"> ... <i
我可以使用AppCompat进行设置吗?还是只适用于SDK 21?您可以在AppCompat主题中设置属性
navigationBarColor
,或者在本机v21主题中设置属性android:navigationBarColor
<style name="AppTheme" parent="@style/Theme.AppCompat.Light">
...
<item name="navigationBarColor">#123456</item>
</style>
...
#123456
请注意,这在棒棒糖制作前的设备上不起作用,因为系统需要支持此功能,而Android 4.4或更高版本则不支持此功能。另一种编程方式:
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(getResources().getColor(R.color.DarkOrange));
window.setNavigationBarColor(getResources().getColor(R.color.red));
此外,要更改状态栏颜色,请添加以下行:
window.setStatusBarColor(getResources().getColor(R.color.green));
style-v21
<resources>
<style name="Theme.DesignDemo" parent="Base.Theme.DesignDemo">
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:windowTranslucentNavigation">true</item>//translucent
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:navigationBarColor">@android:color/transparent</item>
</style>
真的
真//半透明
@android:彩色/透明
@android:彩色/透明
检查这个()是我指的导航栏。谢谢,但我正在寻找同样适用于棒棒糖前设备的东西(minSDK 11)。这是不可能的,至少对于使用appcompat的棒棒糖设备是可能的,这样我就不必将minSDK设置为21?我发现
没有找到与给定名称匹配的资源:attr'navigationBarColor'。
对于appcompat,没有navigationBarColor
您必须使用本机v21android:navigationBarColor
in values-21非常感谢,window.addFlags(WindowManager.LayoutParams.FLAG\u DRAWS\u SYSTEM\u BAR\u BACKGROUNDS);是我错过的东西。