更改底部导航栏图标的颜色?

5

这是我当前底部导航栏的样子:

在此输入图片描述

看起来不错,对吧?但是,在我的设备上查看时,你几乎无法辨认每个图标。

目前,我在themes.xml中设置了以下内容:

...
<!-- Navigation bar colour. -->
<item name="android:navigationBarColor">@color/pink</item>
<item name="android:windowLightNavigationBar">false</item><!-- This does nothing -->
...

目前我的minSdkVersion为29,targetSdkVersion为30。

我该如何改变图标的颜色?如果无法更改颜色,是否可以将它们变为深色,以便能够查看?


你的手机型号是什么?我认为不同的手机可能会有不同的行为。你尝试在安卓模拟器上运行你的代码了吗? - Vadik Sirekanyan
要使图标变得更暗,您应该将windowLightNavigationBar标志设置为true,而不是false - Vadik Sirekanyan
我已经尝试过了,但不幸的是它没有起作用。 - JamieRhys
你尝试在其他设备或模拟器上运行代码了吗?这可能是一个特定于设备的问题。 - Vadik Sirekanyan
5个回答

0

请尝试这个

 <item name="android:navigationBarColor">@android:color/white</item>
<item name="android:windowLightNavigationBar">true</item>
<item name="android:statusBarColor">@android:color/transparent</item>

0
<item name="android:windowLightNavigationBar">true</item> 

应该是正确的。但你说它不起作用。 因此,我假定在您的活动中还有另一个主题。

所以,在您的活动或片段代码中,直接设置窗口标志怎么样。 尝试下面的代码。它会使您的图标变暗。

activity.window.decorView.systemUiVisibility = (
                or View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR
                or View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR)

0

您无法更改导航栏图标的颜色。但是您可以使其变暗或变亮。您的粉色导航栏看起来相当浅。因此,请将windowLightNavigationBar设置为true

<item name="android:windowLightNavigationBar">true</item>

screenshot


我已经尝试过了,但不幸的是它不起作用。 - JamieRhys

0

你可以只让它更轻


0
你现在在 themes.xml 文件中,你尝试过将这个添加到 styles.xml 文件中吗?
<item name="android:navigationBarColor">@color/black</item>

此外,样式和主题页面可能会对您有所帮助!它们提供了比较和相当不错的解释和示例。例如,您可以像这样自定义正在使用的默认主题:
<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>
</style>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接