7

Sto cercando di implementare un layout con un CollapsingToolbarLayout all'interno di uno DrawerLayout. L'intera acitivty_main.xml assomiglia a questo:Spazio vuoto sotto CoordinatorLayout in DrawerLayout

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

    <!-- The CoordinatorLayout is used to coordinate (rly) scroll events between different views --> 
    <android.support.design.widget.CoordinatorLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 

     <!-- The AppBar (everything above the scrolling content) --> 
     <android.support.design.widget.AppBarLayout 
      android:layout_height="wrap_content" 
      android:layout_width="match_parent" 
      android:id="@+id/activity_main__app_bar" 
      android:fitsSystemWindows="true" 
      app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> 

      <android.support.design.widget.CollapsingToolbarLayout 
       android:id="@+id/activity_main__collapsing_toolbar" 
       android:layout_width="match_parent" 
       android:layout_height="@dimen/appbar_size_expanded" 
       android:minHeight="?attr/actionBarSize" 
       app:expandedTitleMarginEnd="16dp" 
       app:expandedTitleMarginStart="72dp" 
       app:expandedTitleMarginBottom="32dp" 
       app:expandedTitleTextAppearance="@style/ExpandedAppBarTitle" 
       app:contentScrim="?attr/colorPrimary" 
       app:layout_scrollFlags="scroll|exitUntilCollapsed"> 

       <android.support.v7.widget.Toolbar 
        android:id="@+id/activity_main__toolbar" 
        android:layout_height="?attr/actionBarSize" 
        android:layout_width="match_parent" 
        android:fitsSystemWindows="true" 
        android:background="?attr/colorPrimary" 
        app:layout_collapseMode="pin" 
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> 

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

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

     <!-- The scrolling content view --> 
     <android.support.v4.widget.NestedScrollView 
      android:id="@+id/activity_main__content_layout" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="#CCC333" 
      app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 

     <!-- The add button --> 
     <android.support.design.widget.FloatingActionButton 
      android:id="@+id/activity_main__floating_action_button" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="16dp" 
      android:src="@drawable/ic_add_white_24dp" 
      android:clickable="true" 
      app:layout_anchor="@+id/activity_main__app_bar" 
      app:layout_anchorGravity="bottom|right|end" 
      app:borderWidth="0dp" 
      app:elevation="@dimen/fab_elevation" /> 

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

    <!-- The navigation drawer --> 
    <android.support.design.widget.NavigationView 
     android:id="@+id/activity_main__navigation_view" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_gravity="start" 
     android:background="@android:color/white" 
     app:menu="@menu/menu_drawer" 
     app:headerLayout="@layout/drawer_navigation_header" /> 

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

Il layout e la struttura applicazione è liberamente tratto this tutorial by codepath, dove ho cambiato il FrameLayout per un NestedScrollView (anche se l'effetto appare con entrambi).

Ora la vista ho intenzione di utilizzare per il contenuto vero e proprio ha qualche strano imbottitura (io ho usato un colore di sfondo per chiarire dove è effettivamente resa):

device capture

dove ho pasticcio?

risposta

2

Dove mi sono incasinato?

È colpa della Design Library. I layout "più corti" dell'altezza dello schermo causano spazi vuoti, malfunzionamenti durante il collasso/apertura <CollapsingToolbarLayout> (ovvero devi trascinare all'esterno dello spazio compresso per aprirlo di nuovo ecc. Ecc. Ecc. sarà, si spera essere fissato un giorno, ma ho avuto nessun indizio quando questo sta per accadere)

+0

è c'è qualche soluzione alternativa forse? Il mio sottotesto è un 'LinearLayout 'con' layout_height = "match_parent" 'e al suo interno un' TextView' con lo stesso, non capisco quanto sia più corto dell'altezza dello schermo. – heyarne

-1

tenta di rimuovere il:. exitUntilCollapsed

Into CollapsingToolbarlayout che hai ora questo codice

app:layout_scrollFlags="scroll" 
Problemi correlati