I would like to have custom view collapsed with a transition during scrolling.
I have AppBarLayout
with a Toolbar
inside. Below that there is a custom view that I want to collapse.
Below custom view there is a NestedScrollView
with LinearLayout
.
Toolbar is green, custom layout is pink and scroll with linear is gray:
After scrolling down:
<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:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
</android.support.design.widget.AppBarLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="170dp"
android:layout_marginTop="?attr/actionBarSize"
android:background="@drawable/background"
android:gravity="center">
</RelativeLayout>
<ScrollView
android:id="@+id/scroll"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="170dp"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<include
layout="@layout/linear"
android:layout_marginBottom="20dp"
android:layout_marginTop="20dp"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</ScrollView>
</android.support.design.widget.CoordinatorLayout>
Should I go with custom behavior and CoordinatorLayout
or translation with NestedScroll
with translation animation?
Use Observable ScrollView library https://github.com/ksoichiro/Android-ObservableScrollView