Skip to content

Instantly share code, notes, and snippets.

@Skyyo
Created August 8, 2020 17:43
Show Gist options
  • Save Skyyo/79461d7aff4d4c94002d9a7498211266 to your computer and use it in GitHub Desktop.
Save Skyyo/79461d7aff4d4c94002d9a7498211266 to your computer and use it in GitHub Desktop.
Solution for dynamic elevation using RV/ScrollView state. #elevation
<View
android:id="@+id/view"
android:background="@color/colorAccent"
android:stateListAnimator="@animator/toolbar_elevator"/>
<-- res/animator/toolbar_elevator.xml -->
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true">
<objectAnimator
android:duration="350"
android:propertyName="elevation"
android:valueTo="8dp"
android:valueType="floatType" />
</item>
<item>
<objectAnimator
android:duration="350"
android:propertyName="elevation"
android:valueTo="0dp"
android:valueType="floatType" />
</item>
</selector>
scrollview.setOnScrollChangeListener { view.isSelected = scrollview.canScrollVertically(-1)}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment