usar support studio library example curso como android material-design androiddesignsupport

support - material design android pdf



CoordinatorLayout con RecyclerView y colapsando el encabezado (2)

Puedes lograrlo teniendo este diseño:

<android.support.design.widget.CoordinatorLayout 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.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.design.widget.CollapsingToolbarLayout android:layout_width="match_parent" android:layout_height="match_parent" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <!-- HEADER --> <RelativeLayout ... app:layout_collapseMode="parallax"> ..... </RelativeLayout> <android.support.v7.widget.Toolbar android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:layout_collapseMode="pin" /> </android.support.design.widget.CollapsingToolbarLayout> <!-- IF YOU WANT TO KEEP "Choose Item" always on top of the RecyclerView, put this TextView here <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" android:text="choose item" /> --> </android.support.design.widget.AppBarLayout> <android.support.v7.widget.RecyclerView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior" /> </android.support.design.widget.CoordinatorLayout>

Para fijar su barra de herramientas, establezca la propiedad app:layout_collapseMode="pin" . Puede hacer que RecyclerView se app:layout_behavior="@string/appbar_scrolling_view_behavior" desplazar correctamente configurando app:layout_behavior="@string/appbar_scrolling_view_behavior" y eso es todo.

¡NÓTESE BIEN! La posición de "Elegir elemento" TextView depende del comportamiento particular que desea lograr:

  • puede incluirlo como un primer elemento del Adapter RecyclerView para desplazarlo, una vez que el usuario comience a desplazarse por RecyclerView ;
  • puede agregarlo a AppBarLayout para que siempre se pegue en RecyclerView , ya sea que lo desplace o no;

Puede leer más aquí Biblioteca de soporte de diseño de Android y aquí Biblioteca de soporte de diseño (III): Diseño del coordinador

¡Espero que ayude!

Tengo un diseño como el siguiente:

(Barra de herramientas, Vista de encabezado, Vista de texto, RecyclerView)

Necesito que el encabezado se contraiga al desplazar los elementos de recyclerview. De modo que la vista "Elegir elemento" y recyclerview queden en la pantalla.

Vi ejemplos cuando la barra de herramientas está contraída, pero necesito que la barra de herramientas esté siempre presente.

¿Qué diseños / comportamiento debo usar para obtener este trabajo?


The below code is working but not smooth scroll compare reqular recyclerview I thought. <?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" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:expandedTitleMarginEnd="64dp" app:expandedTitleMarginStart="48dp" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <com.sliderbanner.views.BannerSlider android:id="@+id/banner_slider1" android:layout_width="match_parent" android:layout_height="wrap_content" app:animateIndicators="true" app:defaultIndicators="dash" app:interval="5000" app:loopSlides="true" /> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?actionBarSize"> <ImageView android:id="@+id/image_github" android:layout_width="36dp" android:layout_height="36dp" android:layout_gravity="right" android:layout_marginRight="8dp" /> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:fontFamily="sans-serif-bold" android:gravity="center_vertical|left" android:text="Banner Slider" android:textColor="@android:color/black" android:textSize="18sp" /> </android.support.v7.widget.Toolbar> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <android.support.v7.widget.RecyclerView android:id="@+id/recycler" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> </android.support.v7.widget.RecyclerView> </android.support.design.widget.CoordinatorLayout>