有时候,我们可能会需要对Fragment的页面切换动画进行监听,那么我们需要怎么样来做呢?
我们可以先建立一个父类的BaseFragment,然后所有的Fragment都要集成这个类,BaseFragment中进行过渡动画的监听:
@Override
public Animation onCreateAnimation(int transit, boolean enter, int nextAnim) {
/**
* 在下面几种情况下不用监听过渡动画
**/
if(this instanceof TowerLayerFragment
|| this instanceof HomeTransitionTowerFrag){
return null;
}
Animation anim;
try{
anim = AnimationUtils.loadAnimation(getActivity(), nextAnim);
anim.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
}
});
}catch(Exception e){
e.printStackTrace();
return null;
}
return anim;
}
这样就实现了过渡动画的监听了。