2016-12-20 2 views
-1

Я не могу избавиться от этой серой полосы из-за моего поля в нижеприведенном XML, который установлен на высоту ActionBar. В конце концов панель действий появляется, но прозрачна, но как я могу избавиться от этого серого фона с самого начала? Если я использую paddingTop, тогда моя панель действий не будет доступна.Серый фон Над основным контентом в Android Из-за поля

enter image description here

<android.support.v4.widget.DrawerLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/drawer_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="@android:color/transparent" 
     android:orientation="vertical"> 

     <include 
      android:id="@+id/action_bar" 
      layout="@layout/action_bar" /> 

    </RelativeLayout> 

    <FrameLayout 
     android:layout_marginTop="?attr/actionBarSize" 
     android:id="@+id/content_frame" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" /> 

    <ListView android:id="@+id/left_drawer" 
     android:background="#FFFFFF" 
     android:layout_width="240dp" 
     android:layout_height="match_parent" 
     android:layout_gravity="left|start" 
     android:choiceMode="singleChoice"/> 
</android.support.v4.widget.DrawerLayout> 

ответ

0

Используйте RelativeLayout родителя для всех остальных раскладок внутри вашего ящика. и установить FrameLayout остаться ниже AppBar, как это:

<android.support.v4.widget.DrawerLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/drawer_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 

     <RelativeLayout 
      android:id="@+id/action_bar_container" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="@android:color/transparent" 
      android:orientation="vertical"> 

      <include 
       android:id="@+id/action_bar" 
       layout="@layout/action_bar" /> 

     </RelativeLayout> 

     <FrameLayout 
      android:id="@+id/content_frame" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_below="@id/action_bar_container" /> 

     <ListView android:id="@+id/left_drawer" 
      android:background="#FFFFFF" 
      android:layout_width="240dp" 
      android:layout_height="match_parent" 
      android:layout_gravity="left|start" 
      android:choiceMode="singleChoice"/> 

    </RelativeLayout> 
</android.support.v4.widget.DrawerLayout> 

Это должно работать, он должен переместить расположение рамки ниже панели действий, только если это видно!

+0

Или просто LinearLayout –

+0

Это сработало, но пришлось сделать 'android: layout_height =" wrap_content "' для контейнера панели задач и переместить ListView для ящика. –

+0

К сожалению, не проверял это, просто скопировал код и добавил родительский макет –

0

This может помочь вам ... или попытаться добавить пользовательскую панель инструментов ... сделать отдельный файл макета с содержанием как below`

<android.support.design.widget.AppBarLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/AppTheme.AppBarOverlay"> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="?attr/gradient" 
     app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
     app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> 

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

` и включить его с include теге в макете вашего выдвижного ящика ... Получить панель инструментов findViewById (...) и установить ее с помощью метода setSupportActionBar (панель инструментов).

Смежные вопросы