8

我已将底部导航视图添加到我的活动 XMl。我无法从菜单项中设置默认选中项。它总是将第一个菜单项设置为默认值。此外,当我点击其他菜单项时,所选菜单项不会突出显示。如果我以编程方式设置 item.setChecked(true) 则菜单选项会突出显示,但第一个菜单项也会突出显示。我在用

 compile 'com.android.support:design:25.0.1'

这是底部导航视图

<android.support.design.widget.BottomNavigationView
    android:id="@+id/bottom_navigation"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:itemBackground="@color/white"
    app:itemTextColor="@color/black"
    app:menu="@menu/navigation_menu">
</android.support.design.widget.BottomNavigationView>

这是菜单

 <?xml version="1.0" encoding="utf-8"?>
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto">

<item
    android:id="@+id/action_wallet"
    android:enabled="true"
    android:icon="@drawable/ic_account_balance_wallet_black_24dp"
    android:title="wallet"
    app:showAsAction="ifRoom"
    />
<item
    android:id="@+id/action_card"
    android:enabled="true"
    android:title="allowance"
    android:icon="@drawable/ic_credit_card_black_24dp"
    app:showAsAction="ifRoom"
    />

<item
    android:id="@+id/action_transaction"
    android:enabled="true"
    android:icon="@drawable/ic_description_black_24dp"
    android:title="transaction"
    app:showAsAction="ifRoom" />

</menu>

底部导航视图 有没有人遇到过这种情况?有关如何处理此问题的任何建议?

谢谢,普里亚

4

2 回答 2

15

添加一个文件夹selector.xmldrawable例如 my xmlis

navbar_color.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true"
         android:color="highlight color" />
   <item android:color="normal color"  />
</selector>

然后在行中添加以下内容BottomNavigationView

app:itemIconTint="@drawable/selector"
app:itemTextColor="@drawable/selector"
于 2017-06-22T15:19:38.513 回答
11

我没有从 OnNavigationItemSelectedListener 返回 true,这就是我面临这个问题的原因。从 OnNavigationItemSelectedListener 返回 true 后,问题得到解决。感谢 user2650128 指出这个方向。

于 2016-11-18T20:20:33.970 回答