Android Activity切换动画overridePendingTransition
Android Activity切换动画是指从Activity A 跳转至Activity B的时候,Activity A 有退出动画,Activity B 有进入动画。这个动画的实现很简单,在startActivity(intent)之后调overridePendingTransition ()这个方法就行。比如实现淡入淡出的效果如下:
Intent i = new Intent(ActivityA.this,ActivityB.class);
StartActivity.this.startActivity(i);
overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out);
不过有时候overridePendingTransition 这个函数会不起作用,总结下,大概是以下三个方面的原因:
1、android系统版本2.0以下,这个没办法,想其他办法解决切换动画吧。
2、在ActivityGroup等的嵌入式Activity中,这个比较容易解决,用如下方法就可以了:
this.getParent().overridePendingTransition 就可以解决。
3、在一个Activity的内部类中,或者匿名类中,这时候只好用handler来解决了。
我这里用到的是后退时的切换效果,即什么都没做的情况下:
代码如下,很简单:
[cpp]
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.back:
this.finish();
overridePendingTransition(0, R.anim.push_up_out);
break;
default:
break;
}
}
上一篇: 破解原理(献给刚接触破解的新手)
推荐阅读
-
Android实现Reveal圆形Activity转场动画的完整步骤
-
android中Activity横竖屏切换的那些事
-
Android开发使用Activity嵌套多个Fragment实现横竖屏切换功能的方法
-
Android Activity进出动画三种方法
-
Android实现Activity界面切换添加动画特效的方法
-
Android的Activity跳转动画各种效果整理
-
Android纠正Activity横竖屏切换的生命周期的错误
-
Android纠正Activity横竖屏切换的生命周期的错误
-
Android用tabhost实现 界面切换,每个界面为一个独立的activity操作
-
Android activity动画不生效原因及解决方案总结