📜  BottomNavigationView 仅图标 - Java (1)

📅  最后修改于: 2023-12-03 15:13:42.454000             🧑  作者: Mango

BottomNavigationView 仅图标 - Java

在Android应用程序中,底部导航栏在不同屏幕之间切换视图或操作时非常有用。BottomNavigationView是一个支持显示标签,图标和信息的Android库。本文将介绍如何在Java中使用BottomNavigationView控件来显示图标,而不显示文本。

前提条件

在你开始使用BottomNavigationView之前,需要先确保你的应用程序环境有以下条件:

  • Android 4.1(API级别16)或更高版本
  • Android Studio中安装了最新版本的Android Support库。
设置BottomNavigationView

在布局XML文件中,添加BottomNavigationView控件:

<android.support.design.widget.BottomNavigationView
    android:id="@+id/navigation"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="?android:attr/windowBackground"
    app:itemIconTint="@drawable/navigation_icon_selector"
    app:menu="@menu/navigation" />

在Java类中,使用以下代码获取底部导航栏并为其设置监听器:

BottomNavigationView bottomNavigationView = findViewById(R.id.navigation);
bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
    @Override
    public boolean onNavigationItemSelected(@NonNull MenuItem item) {
        //TODO: Add navigation logic here
        return true;
    }
});

在res/menu文件夹中,创建一个名为“navigation.xml”的新文件,并使用以下代码添加菜单项:

<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/navigation_home"
        android:icon="@drawable/ic_home_black_24dp"
        android:title="Home" />
    <item
        android:id="@+id/navigation_dashboard"
        android:icon="@drawable/ic_dashboard_black_24dp"
        android:title="Dashboard" />
    <item
        android:id="@+id/navigation_notifications"
        android:icon="@drawable/ic_notifications_black_24dp"
        android:title="Notifications" />
</menu>

这将为BottomNavigationView添加三个菜单项。

禁用显示标签文本

要禁用BottomNavigationView显示标签文本,您可以使用以下Java代码:

bottomNavigationView.setLabelVisibilityMode(LabelVisibilityMode.LABEL_VISIBILITY_UNLABELED);

或在布局XML文件中添加以下属性:

app:labelVisibilityMode="unlabeled"
结论

通过使用BottomNavigationView控件并禁用标签文本,Android应用程序可以实现带有仅图标的底部导航栏。BottomNavigationView也支持徽章显示和文本标签显示,可以根据应用程序的需求进行设置。