2017-08-29 62 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,它是非常煩人的,無論是圖標還是文字都居中......謝謝! –