Ich füge BottomNavigationView
einem Projekt ein hinzu und möchte eine andere Textfarbe (und Symbolfarbe) für die ausgewählte Registerkarte haben (um den Effekt nicht ausgewählter Registerkarten auszublenden). Die Verwendung einer anderen Farbe android:state_selected="true"
in einer Ressourcendatei für die Farbauswahl scheint nicht zu funktionieren. Ich habe auch versucht, zusätzliche Artikeleinträge mit android:state_focused="true"
oder android:state_enabled="true"
leider ohne Wirkung zu haben. Es wurde auch versucht, das state_selected
Attribut für die Standardfarbe (nicht ausgewählt) auf false (explizit) zu setzen, ohne Erfolg.
So füge ich die Ansicht meinem Layout hinzu:
<android.support.design.widget.BottomNavigationView
android:id="@+id/bottom_navigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
app:itemBackground="@color/silver"
app:itemIconTint="@color/bnv_tab_item_foreground"
app:itemTextColor="@color/bnv_tab_item_foreground"
app:menu="@menu/bottom_nav_bar_menu" />
Hier ist mein Farbwähler ( bnv_tab_item_foreground.xml
):
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@android:color/darker_gray" />
<item android:state_selected="true" android:color="@android:color/holo_blue_dark" />
</selector>
Und meine Menüquelle ( bottom_nav_bar_menu.xml
):
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/action_home"
android:icon="@drawable/ic_local_taxi_black_24dp"
android:title="@string/home" />
<item
android:id="@+id/action_rides"
android:icon="@drawable/ic_local_airport_black_24dp"
android:title="@string/rides"/>
<item
android:id="@+id/action_cafes"
android:icon="@drawable/ic_local_cafe_black_24dp"
android:title="@string/cafes"/>
<item
android:id="@+id/action_hotels"
android:icon="@drawable/ic_local_hotel_black_24dp"
android:title="@string/hotels"/>
</menu>
Ich würde mich über jede Hilfe freuen.