Ich habe gesucht, aber es scheint, dass es kein ähnliches Problem wie meines gibt.CollapsingToolbarLayout + Coordinatorlayout + ViewPager + Fragment
Ich habe einen ViewPager mit mehreren Fragmenten. Innerhalb jedes Fragments gibt es einen Kopfteil, den ich möchte, dass er kollabiert (pallax), wenn der untere Teil gescrollt wird (normalerweise ein RecylcerView). Der Collapsing-Part ist ein weiteres Fragment (also kann ich es an mehreren Stellen wiederverwenden).
Das erste Fragment (im ViewPager), das dieses Layout hat, funktioniert gut (Bild A). Die anderen haben jedoch ein Problem wie das Bild B. Wenn Sie die Reihenfolge der Fragmente innerhalb von ViewPager ändern, zum Beispiel B nach erster, A nach zweiter, dann wird A das Problem bekommen, B wird gut funktionieren.
A arbeitet gut (A ist das erste Fragment in ViewPager) Pic A
B lappenden Ausgabe hat. Es gibt einen Platz an der Spitze, die unten durch die Liste unter Pic B
Wenn nach oben die reclyclerview unten überlappt wird, wird der obere Teil kollabieren nicht vollständig
Hier ist das Layout, die beide A & B verwenden die gleiche Layout
<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:fitsSystemWindows="true">
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_collapseMode="parallax"
app:layout_scrollFlags="scroll|exitUntilCollapsed|snap">
<fragment
android:id="@+id/fragment_test"
android:name="com.sample.android.fragment.FragmentTest"
android:layout_width="match_parent"
android:layout_height="@dimen/test_height"
android:fitsSystemWindows="true"
app:layout_collapseMode="parallax" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<include
layout="@layout/layout_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/tv_emtpy"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout>
- layout_list enthält nur eine RecyclerView
Ps: Ich habe mehrere Möglichkeiten ausprobiert: - android: fitsSystemWindows für AppBarLayout, CoordinatorLayout ... - Setzen Sie die Liste in AppBarLayout
Danke für die Empfehlung. Ich werde es versuchen, obwohl es scheint, keine der Optionen ist ähnlich zu meinem Design (kollabierenden Bereich innerhalb des Fragments einer Ansicht Pager und ist ein Fragment selbst) –
FYI: Die Bibliothek hilft nicht, das Problem zu lösen. Tatsächlich verursacht es ein weiteres Flackern, wenn das Layout hochgescrollt wird. Ich denke, ich muss eine andere Strategie für dieses Layout verwenden. Danke für den Vorschlag –