android5.0适配——轻松实现acitivty跳转View无缝过渡动画


android5.0后只需要简单几句代码就能实现这种前一个activity里的view过渡到第二个activity中,但是不能向前兼容,想在5.0之前的系统中实现还是得老老实实去用属性动画搞,废话不多说,直接上代码


一,第一个activity点击跳转的代码这样写:


@Override
public void onClick(View v) {
    Pair<View, String> p = new Pair<View, String>(headerIv, "head");//haderIv是头像控件
    Pair<View, String> p1 = new Pair<View, String>(nameTv, "name");//nameTv是名字控件
    Intent intent = new Intent(MainActivity.this, MyInfoActivity.class);
    MainActivity.this.startActivity(intent, ActivityOptions
            .makeSceneTransitionAnimation(MainActivity.this,
                    p, p1).toBundle());

}
其中可以用同样的方法设置多个view过渡
 
二,第二个activity里onCreate里调用这几句
 
headerIv.setTransitionName("head");//第二个Activity里的头像控件
nameTv.setTransitionName("name");//第二个Activity里的名字控件
postponeEnterTransition();
 
startPostponedEnterTransition();
当然头像如果是图片如果是加载网络的最好在加载完毕的监听里才调用
tartPostponedEnterTransition();
 
 
三,退出第二个Activity用这句
 
this.finishAfterTransition();//不然返回时没有过度动画
 
 
OK,一个最简单的又高大上的过渡动画就完成了,是不是很简单,当然其中还有值得深挖的地方大家自己去挖,百度transition动画等等
 
提示只能在5.0以上的系统中编译运行否则崩溃,低版本需要做版本判断
 
 
 
原创作品,欢迎转载

 
 
 

 
 
 


  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值