I am trying to implement the collapsing toolbar in which the layout collapses , leaving behind the toolbar and the viewpager in sight. But the viewpager is fixed on screen and doesn't allow me to perform the scroll action on it and as a result I need to drag the toolbar to perform the collapsing behaviour. How to make my viewpager perform the scrolling action? Also I've tried using NestedScrollView to contain my viewpager but on doing that my viewpager doesn't show up on screen.
<?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/cl_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:fitsSystemWindows="true"
android:orientation="vertical"
>
<android.support.design.widget.AppBarLayout
android:id="@+id/appBarLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
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"
android:background="?attr/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:layout_scrollFlags="scroll|enterAlways"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
>
<LinearLayout
android:id="@+id/ll_vUserProfileRoot"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:clipChildren="false"
android:clipToPadding="false"
android:fitsSystemWindows="true"
android:orientation="vertical"
android:paddingBottom="24dp"
android:paddingLeft="24dp"
android:paddingRight="24dp"
app:layout_collapseMode="parallax"
>
<LinearLayout
android:id="@+id/ll_vFullUserDetails"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/activity_vertical_margin"
android:clipChildren="false"
>
<ImageView
android:id="@+id/ivUserProfilePhoto"
android:layout_width="@dimen/user_profile_avatar_size"
android:layout_height="@dimen/user_profile_avatar_size"
android:layout_marginEnd="@dimen/activity_horizontal_margin"
tools:srcCompat="@drawable/ic_feed_top"/>
<LinearLayout
android:id="@+id/vUserDetails"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:id="@+id/tv_user_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
android:clickable="false"
android:text="Sateesh Havannavar"
android:textColor="#ffffff"
android:textSize="24sp"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:text="\@"
android:textColor="#bbbbbb"
android:textSize="12sp"/>
<TextView
android:id="@+id/tv_user_nickname"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="#bbbbbb"
android:textSize="12sp"
/>
</LinearLayout>
<TextView
android:id="@+id/tv_user_profile_phone_number"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="#ffffff"
android:textSize="@dimen/default_text_size"
/>
<LinearLayout
android:id="@+id/vLocation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/activity_vertical_margin"
android:baselineAligned="false">
<ImageView
android:id="@+id/iv_streetView"
android:layout_width="@dimen/user_location_size"
android:layout_height="@dimen/user_location_size"
android:layout_gravity="center"
android:layout_marginRight="@dimen/default_margin"
app:srcCompat="@drawable/ic_place_white"/>
<TextView
android:id="@+id/tv_user_location"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:breakStrategy="high_quality"
android:maxLines="3"
android:textColor="#ffffff"
android:textSize="@dimen/default_text_size"
/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/vUserStats"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/activity_horizontal_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:layout_marginTop="@dimen/activity_vertical_margin"
android:baselineAligned="false">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:text="12"
android:textColor="#ffffff"
android:textSize="20sp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:textColor="#ffffff"
android:textSize="@dimen/default_text_size"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableRight="@drawable/ic_stars_amber_a400_24dp"
android:gravity="center_vertical"
android:text="4"
android:textColor="#ffffff"
android:textSize="20sp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:textColor="#ffffff"
android:textSize="@dimen/default_text_size"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:textColor="#ffffff"
android:textSize="20sp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ffffff"
android:textSize="@dimen/default_text_size"/>
</LinearLayout>
</LinearLayout>
<!--:Todo-->
<!--Insert here-->
</LinearLayout>
</android.support.design.widget.CollapsingToolbarLayout>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="48dp">
<android.support.design.widget.TabLayout
android:id="@+id/tlUserProfileTabs"
android:layout_width="match_parent"
android:layout_height="48dp"
android:background="?attr/colorAccent"
app:tabGravity="fill"
app:tabIndicatorColor="#5be5ad"
app:tabIndicatorHeight="4dp"
app:tabMode="fixed"/>
</FrameLayout>
</android.support.design.widget.AppBarLayout>
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab_create"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:layout_gravity="bottom|end"
android:layout_marginBottom="@dimen/btn_fab_margins"
android:layout_marginEnd="@dimen/btn_fab_margins"
app:borderWidth="0dp"
app:elevation="@dimen/default_elevation"
app:pressedTranslationZ="12dp"/>
<!--<android.support.v4.widget.NestedScrollView-->
<!--android:layout_width="match_parent"-->
<!--android:layout_height="match_parent"-->
<!--android:background="@color/colorPrimary"-->
<!--app:layout_behavior="@string/appbar_scrolling_view_behavior">-->
<android.support.v4.view.ViewPager
android:id="@+id/vp_user_profile"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="fill_vertical"
android:background="@color/colorPrimary"
android:clipChildren="false"
android:clipToPadding="false"
app:layout_anchorGravity="fill"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
<!--</android.support.v4.widget.NestedScrollView>-->
</android.support.design.widget.CoordinatorLayout>
Use NestedScrollView and put this in your activity and call it before your ViewPager. NestedScrollView can have only one child.
NestedScrollView scrollView = (NestedScrollView) view.findViewById (R.id.nest_scrollview);
scrollView.setFillViewport (true);