Android CoordinatorLayout + AppbarLayout + Viewpager immer scrollen
Ich habe ein klassisches Layout mit einer Symbolleiste oben, einem TabLayout darunter und einem ViewPager, der die Registerkarten im TabLayout wechselt. Wenn der Inhalt im ViewPager gescrollt werden kann, sollte die Symbolleiste außer Sichtweite gerollt werden und das TabLayout sollte folgen und haften bleiben, wenn es oben angekommen ist.
All dies ist in meinem aktuellen Code gut, außer dass die Symbolleiste unabhängig von der Größe des ViewPager-Inhalts immer scrollbar ist. Siehe meinen Code unten. Irgendwelche brillanten Ideen, wie man das behebt?
<?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:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/primary"
android:orientation="vertical">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.ToolBar"
app:layout_scrollFlags="scroll|enterAlways" />
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:scrollbars="horizontal"
app:tabIndicatorColor="@color/black_text" />
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/tabs_activity_view_pager"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout>
BEARBEITEN
Ich kann sehen, dass die Höhe des viewPagers der Höhe der gesamten Stammansicht entspricht. Dies könnte beabsichtigt sein, da appbar_scrolling_view_behavior einen oberen und unteren Versatz hinzuzufügen scheint. Es scheint jedoch seltsam, da es dazu führt, dass die Symbolleiste und die Tab-Leiste immer gescrollt werden.