安卓studio实现底部导航栏
时间: 2023-06-01 18:04:24 浏览: 135
1. 首先,在项目的build.gradle文件中添加以下依赖。
```java
dependencies {
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:design:27.1.1'
}
```
2. 在xml布局文件中,添加BottomNavigationView。
```xml
<android.support.design.widget.BottomNavigationView
android:id="@+id/bottom_navigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:menu="@menu/bottom_navigation_menu" />
```
3. 创建menu文件夹,在其中创建一个menu文件,命名为bottom_navigation_menu.xml。在文件中添加底部导航栏的菜单项。
```xml
<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_dashboard"
android:icon="@drawable/ic_dashboard"
android:title="Dashboard" />
<item
android:id="@+id/action_notifications"
android:icon="@drawable/ic_notifications"
android:title="Notifications" />
</menu>
```
4. 在Activity中设置底部导航栏。
```java
public class MainActivity extends AppCompatActivity {
private BottomNavigationView bottomNavigationView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bottomNavigationView = findViewById(R.id.bottom_navigation);
// 设置菜单项被选中的监听器
bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()) {
case R.id.action_home:
// 处理Home菜单项被选中的情况
return true;
case R.id.action_dashboard:
// 处理Dashboard菜单项被选中的情况
return true;
case R.id.action_notifications:
// 处理Notifications菜单项被选中的情况
return true;
}
return false;
}
});
}
}
```
5. 运行程序,即可看到底部导航栏的效果。
注意事项:
- 底部导航栏最多只能显示5个菜单项,超过5个后,后面的菜单项将会被隐藏。
- 对于每个菜单项,需要设置一个唯一的ID,这个ID将会用于处理菜单项被选中的情况。
- 底部导航栏的高度是固定的,无法修改。
阅读全文