2016-09-29 13 views
1

根據我的功能,我需要使用抽屜菜單以及底部導航。我正在使用https://github.com/roughike/BottomBar進行底部導航。在添加底部導航的同時獲取工具欄頂部的無需空間

如果我使用只有3個標籤的底部導航比它的工作正常,但如果我擴展它與4或5個選項卡比它出現工具欄頂部的空白空間。

這是我用於添加底部導航的代碼片段。

activity_main.xml中

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/DrawerLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/white" android:elevation="7dp" android:fitsSystemWindows="false" android:scrollbars="none"> 
    <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> 
     <include android:id="@+id/tool_bar" layout="@layout/row_main_toolbar_header"></include> 
     <!-- The main content view --> 
     <FrameLayout android:id="@+id/contentFrame" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginBottom="@dimen/dp_1" android:layout_marginTop="@dimen/dp_10" android:background="@android:color/white" android:orientation="vertical"></FrameLayout> 
    </LinearLayout> 
    <ListView android:id="@+id/lvDrawerMenu" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="start" android:background="@android:color/white" android:scrollbars="none"></ListView> 
</android.support.v4.widget.DrawerLayout> 

沒有用於使用給定的庫底部導航所需的任何部件。

在MainActivity.java中添加底部導航。

BottomBar bottomBar = BottomBar.attach(this, savedInstanceState); 
bottomBar.setItemsFromMenu(R.menu.home_tab_menu, new OnMenuTabSelectedListener() { 
@Override 
public void onMenuItemSelected(int itemId) { 
    switch (itemId) { 
    case R.id.recent_item: 

    break; 
    case R.id.favorite_item: 

    break; 
    case R.id.location_item: 

    break; 
    case R.id.planning_item: 

    break; 
    case R.id.saver_item: 

    break; 

    } 
} 
}); 

row_main_toolbar_main.xml

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="@android:color/white" 
    android:elevation="@dimen/dp_4" 
    android:gravity="center" 
    android:theme="@style/ThemeOverlay.AppCompat.Dark"> 

    <RelativeLayout 
     android:id="@+id/RelativeLayout01" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:padding="10dp"> 

     <TextView 
      android:id="@+id/txtTBTitle" 
      style="@style/CustomBlackHeaderText" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentStart="true" 
      android:layout_alignParentTop="true" 
      android:layout_centerVertical="true" 
      android:layout_toLeftOf="@+id/imgTB4" /> 

     <ImageView 
      android:id="@+id/imgTB4" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_centerVertical="true" 
      android:layout_toLeftOf="@+id/imgTB3" 
      android:layout_toStartOf="@+id/imgTB3" 
      android:padding="@dimen/dp_5" /> 

     <ImageView 
      android:id="@+id/imgTB3" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentTop="true" 
      android:layout_centerVertical="true" 
      android:layout_marginLeft="@dimen/dp_5" 
      android:layout_toLeftOf="@+id/imgTB2" 
      android:layout_toStartOf="@+id/imgTB2" 
      android:padding="@dimen/dp_5" /> 


     <ImageView 
      android:id="@+id/imgTB2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentTop="true" 
      android:layout_centerVertical="true" 
      android:layout_marginLeft="@dimen/dp_5" 
      android:layout_toLeftOf="@+id/imgTB1" 
      android:layout_toStartOf="@+id/imgTB1" 
      android:padding="@dimen/dp_5" /> 

     <ImageView 
      android:id="@+id/imgTB1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentEnd="true" 
      android:layout_alignParentRight="true" 
      android:layout_alignTop="@+id/txtTBTitle" 
      android:layout_centerVertical="true" 
      android:layout_marginLeft="@dimen/dp_5" 
      android:padding="@dimen/dp_5" /> 

    </RelativeLayout> 

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

Screenshot which display space while bottom navigation

Screenshot with no space while only 3 tabs

+0

添加'row_main_toolbar_header'的代碼 –

+0

@AnshulTyagi我編輯後添加了row_main_toolbar_header.xml請檢查。 –

+0

嘗試刪除'android:padding =「10dp」'並告訴我 –

回答

0

我也有類似的問題。我通過添加這行代碼來解決它。根據您的代碼:

bottomBar.noTopOffset(); 

這至少爲我工作超過3個選項卡。