0

Проблема: У меня есть RecyclerView и панель инструментов в CoordinatorLayout. RecyclerView ниже Toolbar, но он не должен. Мой макет работает только для смартфонов, но не для планшетов, хотя планшет xml отличается только одним FrameLayout.RecyclerView находится под панелью инструментов на планшетном устройстве

Вопрос: Как я могу добиться того, чтобы RecyclerView и Toolbar имеют одну границы на устройствах размера таблетки?

Примечание: Я задал знакомый вопрос here. К сожалению, это решение, похоже, работает на смартфоне, а не на устройствах с планшетом.

activity_mail.xml (sw600dp)

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout android:id="@+id/maschineCoordinatorLayout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:fitsSystemWindows="true" 
    xmlns:android="http://schemas.android.com/apk/res/android"> 

    <android.support.design.widget.AppBarLayout 
     android:id="@+id/appBar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:theme="@style/ThemeOverlay.AppCompat.ActionBar"> 

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

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

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:weightSum="9" 
     android:orientation="horizontal" > 

     <FrameLayout 
      android:id="@+id/maschinelistcontainer" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="3" 
      /> 

     <FrameLayout 
      android:id="@+id/detailreviewcontainer" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="6" 
      /> 

    </LinearLayout> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/fab_download_maschinen" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom|end" 
     android:layout_margin="@dimen/fab_margin" 
     android:backgroundTint="@color/colorPrimary" 
     android:src="@android:drawable/ic_dialog_email" 
     app:borderWidth="0dp" 
     app:elevation="@dimen/fab_elevation" 
     app:rippleColor="#00ffff"/> 


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

в maschinelistcontainer FrameLayout I место:

<?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:id="@+id/maschine_fragment" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <android.support.v7.widget.RecyclerView 
     android:id="@+id/recycler_view" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:clipToPadding="false" 
     app:layout_behavior = "@string/appbar_scrolling_view_behavior" 
     android:scrollbars="vertical" /> 

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

</LinearLayout> 

enter image description here

ответ

1

Вы можете сделать это, как это. Измените ваш activity_mail.xml (sw600dp) ниже код:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:id="@+id/maschineCoordinatorLayout" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:fitsSystemWindows="true"> 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 

    <android.support.design.widget.AppBarLayout 
     android:id="@+id/appBar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:theme="@style/ThemeOverlay.AppCompat.ActionBar"> 

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

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

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="horizontal" 
     android:weightSum="9"> 

     <FrameLayout 
      android:id="@+id/maschinelistcontainer" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="3" /> 

     <FrameLayout 
      android:id="@+id/detailreviewcontainer" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="6" /> 

    </LinearLayout> 
</LinearLayout> 


<android.support.design.widget.FloatingActionButton 
    android:id="@+id/fab_download_maschinen" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="bottom|end" 
    android:layout_margin="@dimen/fab_margin" 
    android:backgroundTint="@color/colorPrimary" 
    android:src="@android:drawable/ic_dialog_email" 
    app:borderWidth="0dp" 

    app:rippleColor="#00ffff" />