注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

姑射道人的博客

博客新地址:nixuchen.com

 
 
 

日志

 
 

Activity跳转淡入淡出效果  

2013-10-18 13:55:22|  分类: android |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

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; 
        } 
    } 

@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;
        }
    }

  评论这张
 
阅读(2363)| 评论(1)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017