android - 删除android中的底部导航 View 文本

标签 android bottomnavigationview

我为我的应用程序使用底部导航 View ,并想删除图标下方的文本。我在互联网上寻找它,但仍然找不到解决方案。有没有人用过处理这个请给我你的解决方案。

enter image description here

我想要的是这样的:

enter image description here

我的代码在这里: 主布局包含一个 recyclerview 和一个 bottomnavigationview:

<LinearLayout
    android:weightSum="10"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <android.support.v7.widget.RecyclerView
        android:layout_marginTop="20dp"
        android:layout_weight="8.5"
        android:id="@+id/recyclerview_menu"
        android:layout_width="match_parent"
        android:layout_height="0dp">

    </android.support.v7.widget.RecyclerView>
    <android.support.design.widget.BottomNavigationView
        android:background="@color/whiteColor"
        android:id="@+id/bottom_navigation_bar"
        android:layout_weight="1.5"
        app:menu="@menu/menu_bottom_navigation"
        android:layout_width="match_parent"
        android:layout_height="0dp">

    </android.support.design.widget.BottomNavigationView>
</LinearLayout>

这是底部导航菜单:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
    android:id="@+id/action_favorites"
    android:enabled="true"
    android:icon="@drawable/ic_search"
    android:title="Home"
    app:showAsAction="ifRoom" />
<item
    android:id="@+id/action_schedules"
    android:enabled="true"
    android:icon="@drawable/ic_search"
    android:title="Search"
    app:showAsAction="ifRoom" />
<item
    android:id="@+id/action_music"
    android:enabled="true"
    android:icon="@drawable/ic_search"
    android:title="Save"
    app:showAsAction="ifRoom" />
<item
    android:id="@+id/action_me"
    android:enabled="true"
    android:icon="@drawable/ic_search"
    android:title="Me"
    app:showAsAction="ifRoom" />

在 MainActivity 中:

    mBottomBar = (BottomNavigationView) 
    findViewById(R.id.bottom_navigation_bar);
    disableShiftMode(mBottomBar);

    public void disableShiftMode(BottomNavigationView view) {
    BottomNavigationMenuView menuView = (BottomNavigationMenuView) view.getChildAt(0);
    try {
        Field shiftingMode = menuView.getClass().getDeclaredField("mShiftingMode");
        shiftingMode.setAccessible(true);
        shiftingMode.setBoolean(menuView, false);
        shiftingMode.setAccessible(false);
        for (int i = 0; i < menuView.getChildCount(); i++) {
            BottomNavigationItemView item = (BottomNavigationItemView) menuView.getChildAt(i);
            item.setShiftingMode(false);
            // set once again checked value, so view will be updated
            item.setChecked(item.getItemData().isChecked());
        }
    } catch (NoSuchFieldException e) {
        Log.e("Luan", "Unable to get shift mode field");
    } catch (IllegalAccessException e) {
        Log.e("Luan", "Unable to change value of shift mode");
    }
}

最佳答案

将“app:labelVisibilityMode”设置为“未标记”

    <android.support.design.widget.BottomNavigationView
        android:id="@+id/navigation"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:labelVisibilityMode="unlabeled"/>

关于android - 删除android中的底部导航 View 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45943416/

相关文章:

android - 如何在 android 中增加底部导航 View 高度及其图标和文本大小?

Android - 如何使用 Intent 数据获取图像

android - 隐藏的状态栏仍然占用空间

java listview改变内容

android - 如何在 BottomNavigationView 的 menuItem 上隐藏工具提示?

android - 从bottomNavigationView导航到 fragment B时保存 fragment A的状态

Android Jetpack Navigation、BottomNavigationView 与 Youtube 或 Instagram 类似正确的后退导航( fragment 后退堆栈)?

android - Android Design Support 库的 Eclipse 错误

java - 动态绘制立方体的问题

android - 在Kotlin中检查BottomNavigatorBar中的MenuItem