回答

11

enter image description here

嘗試以下代碼:

XML文件:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="top" 
     android:background="@color/gray" 
     android:foregroundGravity="top" 
     android:gravity="top"> 

    </android.support.v7.widget.Toolbar> 

    <FrameLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1"> 


     <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:id="@+id/fragment_container" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" /> 

    </FrameLayout> 


    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 

     <android.support.design.widget.BottomNavigationView 
      android:id="@+id/bottomnav" 
      android:layout_width="0dp" 
      android:layout_height="56dp" 
      android:layout_weight="1" 
      android:background="null" 
      app:itemIconTint="@color/green" 
      app:itemTextColor="@color/green" 
      app:menu="@menu/main"> 


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

     <ImageView 
      android:layout_width="0dp" 
      android:layout_height="56dp" 
      android:layout_weight="0.5" 
      android:src="@drawable/camera" /> 

     <android.support.design.widget.BottomNavigationView 
      android:id="@+id/bottomnav1" 
      android:layout_width="0dp" 
      android:layout_height="56dp" 
      android:layout_weight="1" 
      android:background="null" 
      app:itemIconTint="@color/green" 
      app:itemTextColor="@color/green" 
      app:menu="@menu/main"> 


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

Helper類:

public class BottomNavigationViewHelper { 
    public static 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); 
       //noinspection RestrictedApi 
       item.setShiftingMode(false); 
       // set once again checked value, so view will be updated 
       //noinspection RestrictedApi 
       item.setChecked(item.getItemData().isChecked()); 
      } 
     } catch (NoSuchFieldException e) { 
      Log.e("BNVHelper", "Unable to get shift mode field", e); 
     } catch (IllegalAccessException e) { 
      Log.e("BNVHelper", "Unable to change value of shift mode", e); 
     } 
    } 
} 

在活動:

BottomNavigationView bnav = (BottomNavigationView) findViewById(R.id.bottomnav); 
BottomNavigationViewHelper.disableShiftMode(bnav); 

菜單文件:

<item 
    android:id="@+id/place" 
    android:icon="@drawable/ic_place_black_24dp" 
    android:title="Place"/> 

<item 
    android:id="@+id/home" 
    android:icon="@drawable/ic_account_balance_black_24dp" 
    android:title="Home"/> 

+0

感謝您的回覆,但我已完成此代碼。我想要像在底部導航項目中的第三個圖標相機。 –

+0

你可以嘗試水平線性佈局。並且您可以在兩者之間添加兩個底部導航視圖和一個圖像視圖。 –

+0

看到我編輯的答案 –