配置底部的Tabbar
1. 添加依赖
dependencies {
implementation "com.google.android.material:material:1.7.0" // 确保已添加Material Components库
implementation "androidx.navigation:navigation-fragment-ktx:2.5.0" // 导航组件依赖
implementation "androidx.navigation:navigation-ui-ktx:2.5.0" // UI组件依赖
}2. 创建布局文件
<!-- activity_main.xml -->
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- 主内容区,用来承载 Fragment -->
<androidx.fragment.app.FragmentContainerView
android:id="@+id/nav_host_fragment"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:defaultNavHost="true" <!-- 使得返回键返回到 Navigation 栈 -->
app:navGraph="@navigation/nav_graph" /> <!-- 导航图 -->
<!-- 底部导航栏 -->
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/bottom_nav"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
app:menu="@menu/bottom_nav_menu" <!-- 引用菜单资源 -->
app:itemIconTint="@color/nav_item_color" <!-- 设置选中和未选中的颜色 -->
app:itemTextColor="@color/nav_item_color" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>3. 创建底部导航菜单
4. 配置 Navigation 图(NavGraph)
5. 在 Activity 中设置 BottomNavigationView
Activity 中设置 BottomNavigationView6. 管理底部导航栏的状态
7. 处理返回键
8. 使用 SafeArgs 传递数据(可选)
总结
Last updated