BottomNavigationView定义
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/nav_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?android:attr/windowBackground"
app:labelVisibilityMode="labeled"
app:layout_constraintBottom_toBottomOf="parent"
app:itemIconTint="@drawable/bg_main_bottom_item"
app:itemTextColor="@drawable/bg_main_bottom_item"
app:menu="@menu/bottom_nav_menu" />
- “app:labelVisibilityMode”属性显示文本
- “app:itemIconTint”属性针对图标,进行选中和非选中状态的切换
- “app:itemTextColor”属性针对文本,进行选中和非选中状态的切换
- “app:menu”属性定义每个Item的图标、文本、Fragment的ID
drawable/bg_main_bottom_item
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:color="@color/menu_tint" />
<item android:color="@color/black" />
</selector>
menu/bottom_nav_menu
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/terminal_fragment"
android:icon="@drawable/ic_terminal"
android:title="@string/main_terminal" />
<item
android:id="@+id/scenes_fragment"
android:icon="@drawable/ic_scenes"
android:title="@string/main_scenes" />
<item
android:id="@+id/services_fragment"
android:icon="@drawable/ic_services"
android:title="@string/main_services" />
<item
android:id="@+id/mine_fragment"
android:icon="@drawable/ic_account"
android:title="@string/main_mine" />
</menu>
https://www.cnblogs.com/guanxinjing/p/11027145.html


