package org.horaapps.leafpic.views;
import android.content.Context;
import android.support.design.widget.CoordinatorLayout;
import android.support.design.widget.FloatingActionButton;
import android.support.v4.view.ViewCompat;
import android.util.AttributeSet;
import android.view.View;
import android.view.animation.AccelerateInterpolator;
import android.view.animation.DecelerateInterpolator;
/**
* Created by dnld on 06/03/16.
*/
public class FabScrollBehaviour extends FloatingActionButton.Behavior {
public FabScrollBehaviour(Context context, AttributeSet attributeSet) {
super();
}
@Override
public void onNestedScroll(CoordinatorLayout coordinatorLayout, FloatingActionButton child, View target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed) {
super.onNestedScroll(coordinatorLayout, child, target, dxConsumed, dyConsumed, dxUnconsumed, dyUnconsumed);
if (dyConsumed > 0)
child.animate().translationY(child.getHeight()*2).setInterpolator(new AccelerateInterpolator(2)).start();
else
child.animate().translationY(/*-Measure.getNavigationBarSize(coordinatorLayout
.getContext()).y*/0).setInterpolator(new DecelerateInterpolator(2)).start();
}
@Override
public boolean onStartNestedScroll(CoordinatorLayout coordinatorLayout, FloatingActionButton child, View directTargetChild, View target, int nestedScrollAxes) {
return nestedScrollAxes == ViewCompat.SCROLL_AXIS_VERTICAL;
}
}