在全屏 Android Lollipop 上设置导航栏颜色 activity
Set navigationBar color on Android Lollipop with Full screen activity
有没有办法在全屏模式下设置导航栏颜色activity?
if(android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().setNavigationBarColor(getResources().getColor(R.color.Theme_color));</pre>
我的主题风格中的这一行:
<item name="android:navigationBarColor" tools:targetApi="21">#E64A19</item>
两者都会在我的活动布局上方产生相同的透明导航栏...
代码:
活跃度:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//Remove title bar
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
//Remove notification bar
this.getWindow()
.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_account);
if (getResources().getBoolean(R.bool.portrait_only)) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow()
.setNavigationBarColor(getResources().getColor(R.color.Theme_color));
}
//other code ... (irrelevant)
主题:
<style name="FullscreenTheme" parent="android:Theme.NoTitleBar">
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowBackground">@null</item>
<item name="metaButtonBarStyle">@style/ButtonBar</item>
<item name="metaButtonBarButtonStyle">@style/ButtonBarButton</item>
<item name="android:navigationBarColor" tools:targetApi="21">#E64A19</item>
</style>
结果是一个黑色的导航栏。但我想要一个橙色 (#E64A19) 导航栏。
结果:
检查此库:SystemBarTint。
这对你有用。
将这是您的 values-v21/styles.xml,以便在 Lollipop
上启用它
我的解决方案:
问题出在生成的代码(XML 主题)上,一旦我从我的主题样式中删除了 parent="android:Theme.NoTitleBar"
属性(以及 <item name="android:navigationBarColor" tools:targetApi="21">#E64A19</item>
以外的所有其他属性),我的导航栏就变成了橘子!
结果:
有没有办法在全屏模式下设置导航栏颜色activity?
if(android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { getWindow().setNavigationBarColor(getResources().getColor(R.color.Theme_color));</pre>
我的主题风格中的这一行:
<item name="android:navigationBarColor" tools:targetApi="21">#E64A19</item>
两者都会在我的活动布局上方产生相同的透明导航栏...
代码:
活跃度:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //Remove title bar this.requestWindowFeature(Window.FEATURE_NO_TITLE); //Remove notification bar this.getWindow() .setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.activity_account); if (getResources().getBoolean(R.bool.portrait_only)) { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); } if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { getWindow() .setNavigationBarColor(getResources().getColor(R.color.Theme_color)); } //other code ... (irrelevant)
主题:
<style name="FullscreenTheme" parent="android:Theme.NoTitleBar"> <item name="android:windowContentOverlay">@null</item> <item name="android:windowBackground">@null</item> <item name="metaButtonBarStyle">@style/ButtonBar</item> <item name="metaButtonBarButtonStyle">@style/ButtonBarButton</item> <item name="android:navigationBarColor" tools:targetApi="21">#E64A19</item> </style>
结果是一个黑色的导航栏。但我想要一个橙色 (#E64A19) 导航栏。
结果:
检查此库:SystemBarTint。
这对你有用。
将这是您的 values-v21/styles.xml,以便在 Lollipop
上启用它我的解决方案:
问题出在生成的代码(XML 主题)上,一旦我从我的主题样式中删除了 parent="android:Theme.NoTitleBar"
属性(以及 <item name="android:navigationBarColor" tools:targetApi="21">#E64A19</item>
以外的所有其他属性),我的导航栏就变成了橘子!
结果: