package com.example.scoop.basics.ui.transitions.customtransition;
import android.annotation.TargetApi;
import android.os.Build;
import android.transition.Scene;
import android.transition.Transition;
import android.transition.TransitionManager;
import android.view.View;
import android.view.ViewGroup;
import com.lyft.scoop.ScreenTransition;
import com.lyft.scoop.TransitionListener;
public class AutoTransition implements ScreenTransition {
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override
public void transition(final ViewGroup root, final View from, final View to, final TransitionListener transitionListener) {
Scene toScene = new Scene(root, to);
android.transition.AutoTransition transition = new android.transition.AutoTransition();
transition.addListener(new Transition.TransitionListener() {
@Override
public void onTransitionStart(Transition transition) {
}
@Override
public void onTransitionEnd(Transition transition) {
transitionListener.onTransitionCompleted();
}
@Override
public void onTransitionCancel(Transition transition) {
transitionListener.onTransitionCompleted();
}
@Override
public void onTransitionPause(Transition transition) {
}
@Override
public void onTransitionResume(Transition transition) {
}
});
TransitionManager.go(toScene, transition);
}
}