package architect.commons.transition;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.view.View;
import architect.ViewTransitionDirection;
/**
* @author Lukasz Piliszczuk - lukasz.pili@gmail.com
*/
public class BottomAppearTransition extends ModalTransition {
protected boolean hideExitView = true;
public BottomAppearTransition() {
}
public BottomAppearTransition(Config config) {
super(config);
}
/**
* @param hideExitView should the transition hide the exit view?
*/
public BottomAppearTransition(boolean hideExitView) {
this.hideExitView = hideExitView;
}
/**
* @param hideExitView should the transition hide the exit view?
*/
public BottomAppearTransition(boolean hideExitView, Config config) {
super(config);
this.hideExitView = hideExitView;
}
@Override
public void transition(View enterView, View exitView, ViewTransitionDirection direction, AnimatorSet set) {
super.transition(enterView, exitView, direction, set);
if (direction == ViewTransitionDirection.FORWARD) {
set.play(ObjectAnimator.ofFloat(enterView, View.TRANSLATION_Y, enterView.getHeight(), 0));
} else {
set.play(ObjectAnimator.ofFloat(exitView, View.TRANSLATION_Y, 0, exitView.getHeight()));
}
}
@Override
public boolean hideExitView() {
return hideExitView;
}
}