2017-08-29 65 views
0

我对我的应用使用底部导航视图,并希望删除图标下的文本。我在网上找了它,但仍然找不到解决方案。有没有人用来处理这个问题,请给我你的解决方案。删除android中的底部导航视图文本

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"); 
    } 
} 
+0

在您当前的代码帖子中发生了什么,如果可能的话也请发帖相关代码 –

+0

我没有看到任何文字。你是什​​么意思 – MrAppMachine

+0

我的意思是我想要看起来像在第二张照片。我编辑了我的帖子。 –

回答

1

在菜单items.Then移除标题应用填充顶部bottomnavigationview像下面

<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" 
app:showAsAction="ifRoom" /> 
<item 
android:id="@+id/action_schedules" 
android:enabled="true" 
android:icon="@drawable/ic_search" 
app:showAsAction="ifRoom" /> 
<item 
android:id="@+id/action_music" 
android:enabled="true" 
android:icon="@drawable/ic_search" 
app:showAsAction="ifRoom" /> 
<item 
android:id="@+id/action_me" 
android:enabled="true" 
android:icon="@drawable/ic_search" 
app:showAsAction="ifRoom" /> 

在底部导航视图

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

你得到错误的项目菜单没有标题。 –

+0

add android:tittle =“” –

+0

当然,showAsAction,它是非常烦人的,无论是图标还是文字都居中......谢谢! –