transaction动画一般用于fragment的切换动画。使用类似Animation或者Animator。
当然区别还是有的,例如
fragment.setSharedElementEnterTransition(sharedEnterAnimation);
设置进入动画后并不需要再使用setSharedElementReturnTransition设置返回动画,返回动画会使用进入动画逆序自动生成
transaction可以设置动画的Listener获取动画结束,开始或取消等事件通知,例如
sharedEnterAnimation.addListener(new Transition.TransitionListener() {
@Override
public void onTransitionStart(@NonNull Transition transition) {
}
@Override
public void onTransitionEnd(@NonNull Transition transition) {
}
@Override
public void onTransitionCancel(@NonNull Transition transition) {
}
@Override
public void onTransitionPause(@NonNull Transition transition) {
}
@Override
public void onTransitionResume(@NonNull Transition transition) {
}
});
但是最近发现在魅蓝手机上有奇怪的现象,就是Listener的代码居然在返回动画中也会跑,前提是只设置了进入动画的情况下。真是坑,本来以为是android的bug,但是验证6.0的模拟器是无此问题的,那么只可能是魅蓝的问题了。没问题还改出问题来