android底部导航栏navigation,BottomNavigationView,给出各部分具体代码
时间: 2024-01-02 11:02:09 浏览: 150
Android 中的底部导航栏通常使用 BottomNavigationView 组件来实现。
以下是一个简单的代码示例:
在布局文件中添加 BottomNavigationView 组件:
```
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/bottom_navigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
app:itemBackground="@color/white"
app:itemIconTint="@drawable/selector_bottom_navigation"
app:itemTextColor="@drawable/selector_bottom_navigation"
app:menu="@menu/bottom_navigation_menu" />
```
在 Activity 中设置 BottomNavigationView:
```
BottomNavigationView bottomNavigationView = findViewById(R.id.bottom_navigation);
bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.action_home:
// 处理点击 Home 按钮的逻辑
return true;
case R.id.action_explore:
// 处理点击 Explore 按钮的逻辑
return true;
case R.id.action_profile:
// 处理点击 Profile 按钮的逻辑
return true;
}
return false;
}
});
```
其中,setOnNavigationItemSelectedListener() 方法设置 BottomNavigationView 的点击事件。
通过在 menu 文件夹中创建 bottom_navigation_menu.xml 文件,可以为 BottomNavigationView 添加菜单项:
```
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/action_home"
android:icon="@drawable/ic_home"
android:title="Home" />
<item
android:id="@+id/action_explore"
android:icon="@drawable/ic_explore"
android:title="Explore" />
<item
android:id="@+id/action_profile"
android:icon="@drawable/ic_profile"
android:title="Profile" />
</menu>
```
其中,@drawable/selector_bottom_navigation 是一个 drawable 文件,用于定义 BottomNavigationView 中菜单项的选中和未选中状态:
```
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/primary" android:state_checked="true"/>
<item android:color="@color/gray" android:state_checked="false"/>
</selector>
```
这样就可以实现一个简单的底部导航栏了。
阅读全文