【发布时间】:2017-12-04 08:51:20
【问题描述】:
由于 Galaxy s8 主页/返回/最近按钮现在是软键,所以我只需要在我的应用程序中更改按钮的背景颜色。
【问题讨论】:
标签: java android xamarin samsung-galaxy
由于 Galaxy s8 主页/返回/最近按钮现在是软键,所以我只需要在我的应用程序中更改按钮的背景颜色。
【问题讨论】:
标签: java android xamarin samsung-galaxy
你的问题在 Lollipop 及以上版本中解决了,
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
Window window = getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setNavigationBarColor(Color.YOUR_COLOR);
}
【讨论】:
以编程方式询问 Dhruv Patel 回答正确的问题
但对于其他偶然发现这一点并想知道如何在 xml 中执行此操作的人,请从 /res/values-v21/styles.xml 打开 styles.xml(如果您的 minSdk 小于 21,否则只需 /res /values/styles.xml)并在您在您的或 AndroidManifest 中使用的主题下(我在整个过程中使用“AppTheme”),
AndroidManifest.xml
...
<application
android:name=".MyApp"
android:icon="@drawable/appicon"
android:label="@string/app_name"
android:theme="@style/AppTheme">
在styles.xml中的主题下插入一行
<item name="android:navigationBarColor">@android:color/black</item>
然后将颜色更改为您想要的任何颜色,使其看起来像
styles.xml
<resources>
<style name="AppTheme" parent="Theme.AppCompat.DayNight.DarkActionBar">
<!-- Other items -->
<item name="android:textColorHint">@color/hint_gray</item>
<item name="android:buttonStyle">@style/RobotoButtonStyle</item>
<item name="android:navigationBarColor">@android:color/black</item>
</style>
</resources>
如果您的 minSdk 小于 21 并且您没有设置 styles-v21 ,您可以在 styles.xml 中插入行项目,Android Studio 的内置工具将显示错误并帮助创建目录
【讨论】: