5

Próbuję użyć CollapsingToolbarLayout, aby mieć zwijany pasek narzędzi z ViewPager, który zanika podczas przewijania w górę, ale wydaje mi się, że tracę możliwość przewijania w górę, jeśli ViewPager jest obecny.CollapsingToolbarLayout z ViewPager

Program ViewPager powinien wyświetlać wiele obrazów na pasku narzędzi.

Oto XML:

<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:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
     android:fitsSystemWindows="true"> 

     <android.support.design.widget.CollapsingToolbarLayout 
      android:id="@+id/collapsing_toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      app:layout_scrollFlags="scroll|exitUntilCollapsed" 
      app:contentScrim="?attr/colorPrimary" 
      android:fitsSystemWindows="true"> 

      <android.support.v4.view.ViewPager 
       android:id="@+id/pager" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       app:layout_collapseMode="parallax" 
       android:fitsSystemWindows="true"> 
      </android.support.v4.view.ViewPager> 

      <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" 
       app:layout_collapseMode="pin" /> 

     </android.support.design.widget.CollapsingToolbarLayout> 

    </android.support.design.widget.AppBarLayout> 

    <android.support.v4.widget.NestedScrollView 
     android:id="@+id/scroll" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:clipToPadding="false" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior"> 

     <!-- Content --> 

    </android.support.v4.widget.NestedScrollView> 

</android.support.design.widget.CoordinatorLayout> 
+0

xml wygląda dobrze, jaki problem masz do czynienia? –

+0

@MukeshRana Mogę przewijać poziomo w ViewPager, ale nie pionowo, aby go ukryć. – Nashuim

+0

, ale powinieneś mieć widok przewijania pod swoim podglądem, tak jak w twoim przypadku jest to NestedScrollView. więc musisz przewinąć w pionie twój NestedScrollView, a nie viewpager. Viewpager po prostu reaguje na efekt przewijania. –

Odpowiedz

5

udało mi się rozwiązać ten problem poprzez ustalenie wysokości tego ViewPager do stałej wielkości. Wygląda na to, że wrap_content nie ma znaczenia, niezależnie od rozmiaru obrazu.

+0

W moim przypadku włączyłem fragment zamiast ViewPager, a dla tego mogę ustawić wysokość na "wrap_content". Główną różnicą w mojej implementacji w porównaniu do twojej jest to, że fitSystemWindows nie jest ustawiony i ma wartość domyślną. – Elementary

Powiązane problemy