2016-10-11 5 views
0

So habe ich auf ein Problem gestoßen, das ich die Lösung nicht finden kann. Ich habe einen kleinen Ausschnitt des Problems gemacht. VideoÄndern der Farbe von collapsingToolbarLayout auf Bildlauf

Was ich will, ist, dass, sobald ich die collapsingToolbarLayout blättern die Farbe sollte Wechsel in der Symbolleiste Farbe beginnen, wie es in Facebook-App passiert. Wie Sie sehen können, beginnt es danach, wenn es 3/4 Höhe des collapsingToolbarLayout bedeckt.

XML:

<android.support.design.widget.AppBarLayout 
    android:id="@+id/app_bar_layout" 
    android:layout_width="match_parent" 
    android:layout_height="280dp" 
    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" 
     android:fitsSystemWindows="true" 
     app:contentScrim="?attr/colorPrimary" 
     app:expandedTitleMarginEnd="56dp" 
     app:expandedTitleMarginStart="24dp" 
     app:layout_scrollFlags="scroll|exitUntilCollapsed" 
     app:titleEnabled="true"> 


     <RelativeLayout 
      android:id="@+id/layout" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent"> 

      <ImageView 
       android:id="@+id/imageV" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:adjustViewBounds="true" 
       android:contentDescription="@null" 
       android:fitsSystemWindows="true" 
       android:scaleType="centerCrop" 
       android:transitionName="image" 
       app:layout_collapseMode="parallax" 
       tools:targetApi="lollipop" /> 

      <View 
       android:id="@+id/view" 
       android:layout_width="match_parent" 
       android:layout_height="280dp" 
       android:background="#200000" /> 

     </RelativeLayout> 

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

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

jede Hilfe dankbar. Danke.

Antwort

0

CollapsingToolbarLayout hat ein Attribut genannt app:scrimVisibleHeightTrigger

Gibt die Menge der sichtbaren Höhe in Pixeln verwendet, um festzulegen, wann eine Scrim Sichtbarkeitsveränderung auszulösen.

Da Ihre App-Leiste eine Höhe von 280 dpi hat, sollte die Einstellung app:scrimVisibleHeightTrigger="240dp" funktionieren.

Ich kann mich nicht erinnern, ob das von oben oder von unten ist, also wenn es wirklich spät ändert, versuchen Sie app:scrimVisibleHeightTrigger="20dp". Wie auch immer, Sie sollten in der Lage sein, diesen Wert zu optimieren, um das gewünschte Aussehen zu erhalten.