2015-09-29 20 views
6

Mam problem z "paskiem narzędzi z tekstem tytułu" Nie zwiń podczas przewijania w górę w CollapsingToolbarLayout.Pasek narzędzi Android collapseMode wydanie

Próbowałem kilku poprawek, używając aplikacji : layout_collapseMode = "none" jako atrybut w moim android.support.v7.widget.Toolbar, ale nie działa. Być może jest problem z moim układem.

Poniżej przedstawiam, co staram się osiągnąć.

Trying to Achieve

Ale kiedy przejść do górnej części, Toolbar również zwinąć, a umieszczenie zakładek przewija również wewnątrz i stają się niewidoczne. poniżej jest to, co mam teraz.

what i have now

To jest mój kod Układ

<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.support.design.widget.AppBarLayout 
     android:id="@+id/appbar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 



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

      <FrameLayout 
       android:layout_width="match_parent" 
       android:layout_height="250dp" 
       app:layout_collapseMode="parallax" 
       app:layout_collapseParallaxMultiplier="0.7"> 

       <ImageView 
        android:id="@+id/backdrop" 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:scaleType="centerCrop" /> 

       <View 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:background="#20000000" /> 

      </FrameLayout> 

      <android.support.v7.widget.Toolbar 
       android:id="@+id/toolbar" 
       app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
       android:layout_width="match_parent" 
       android:layout_height="?attr/actionBarSize" 
       app:layout_collapseMode="none" 
       > 
       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Application Title" 
        android:textColor="#fff" 
        android:textSize="18sp" /> 
      </android.support.v7.widget.Toolbar> 




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



     <android.support.design.widget.CollapsingToolbarLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      app:layout_scrollFlags="scroll|enterAlways"> 

      <android.support.design.widget.TabLayout 
       android:id="@+id/detail_tabs" 
       android:layout_width="match_parent" 
       android:layout_height="60dp" 
       app:layout_collapseMode="pin" 

       android:background="#00000000" 
       app:tabSelectedTextColor="#3498db" 
       app:tabTextColor="#000" /> 
      /> 

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

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

    <android.support.v4.view.ViewPager 
     android:id="@+id/viewpager" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="#333" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 
</android.support.design.widget.CoordinatorLayout> 

Zależności

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile "com.android.support:appcompat-v7:22.2.1" 
    compile "com.android.support:support-annotations:22.2.1" 
    compile "com.android.support:design:22.2.1" 
    compile 'com.android.support:recyclerview-v7:22.2.1' 
    compile 'com.android.support:cardview-v7:22.2.1' 

} 

Odpowiedz

8

spróbować to ...

Musisz użyć aplikacji : layout_scrollFlag s = "scroll | exitUntilCollapsed" zamiast aplikacji: layout_scrollFlags = "scroll | enterAlways" wewnątrz CollapsingToolbarLayout

i używać aplikacja: layout_collapseMode = "pin" wewnątrz paska

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

     <FrameLayout 
      android:layout_width="match_parent" 
      android:layout_height="250dp" 
      app:layout_collapseMode="parallax" 
      app:layout_collapseParallaxMultiplier="0.7" > 

      <ImageView 
       android:id="@+id/backdrop" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:scaleType="centerCrop" /> 

      <View 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:background="#20000000" /> 
     </FrameLayout> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:layout_collapseMode="pin" 
      app:popupTheme="@style/ThemeOverlay.AppCompat.Light" > 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="Application Title" 
       android:textColor="#fff" 
       android:textSize="18sp" /> 
     </android.support.v7.widget.Toolbar> 

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

Tak, zadziałało, dzięki za odpowiedź! , czy masz jakiś link, gdzie mogę lepiej dowiedzieć się więcej o obsłudze projektowania układów? –

+0

http://www.sitepoint.com/material-design-android-design-support-library/ –

+0

Czy "app: layout_collapseMode =" pinezka "" działa tylko dla paska narzędzi? –

5

W pasku narzędzi to zrobić:

app:layout_collapseMode="pin" 

pin służy do przypinania układ do góry, gdy zwijanie paska narzędzi układ przewija

paralaksy służy do ukrywania układ podczas zapadania przewijany pasek narzędzi do góry

+0

Dzięki za odpowiedź "Teraz zachowuje się jak przewijam stopniowo", ALE zaraz po przewinięciu do pozycji paska narzędzi pasek narzędzi zostanie przesunięty w górę i stanie się niewidoczny. –

+0

Czy może być coś nie tak z moim istniejącym układem? –

+0

Pozwól mi sprawdzić proszę – Aakash