アプリの下部ナビゲーションビューを使用していて、アイコンの下のテキストを削除したいと思います。インターネットで探しましたが、まだ解決策が見つかりません。誰かがこれに対処するために使用しましたか?私にあなたの解決策を教えてください。
私が欲しいのはこのようなものです:
ここに私のコード:メインレイアウトには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」を「unlabeled」に設定します
<Android.support.design.widget.BottomNavigationView
Android:id="@+id/navigation"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
app:labelVisibilityMode="unlabeled"/>
メニュー項目のタイトルを削除してから、以下のように上部から下部のナビゲーションビューにパディングを適用します
<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:tittle=""
Android:enabled="true"
Android:icon="@drawable/ic_search"
app:showAsAction="ifRoom" />
<item
Android:id="@+id/action_schedules"
Android:tittle=""
Android:enabled="true"
Android:icon="@drawable/ic_search"
app:showAsAction="ifRoom" />
<item
Android:id="@+id/action_music"
Android:tittle=""
Android:enabled="true"
Android:icon="@drawable/ic_search"
app:showAsAction="ifRoom" />
<item
Android:id="@+id/action_me"
Android:tittle=""
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">