先说结论:
Activity进场效果:
context.startActivity(intent);
if (contextinstanceof Activity){
((Activity)context).overridePendingTransition(R.anim.bottom_in, R.anim.bottom_out);
}
Activity出场效果:
@Override
public void finish() {
super.finish();
overridePendingTransition(R.anim.bottom_in, R.anim.bottom_out);
}
采坑1:
我们知道可以用xml样式实现Activity进出场动画效果,但有机型适配问题,有些机器不起效果,这时需要代码实现。
采坑2:
为啥不用
@Override
public void startActivity(Intent intent) {
super.startActivity(intent);
this.overridePendingTransition(R.anim.bottom_in, R.anim.bottom_out);
}
这里未调用。
采坑3:
为啥要判断if (contextinstanceof Activity)
因为有些机器xml不适用的情况下,如果启动方式用了Application上下文设置不了入场动画。
网友评论