android 转场动画兼容问题,【Android】关于ARouter转场动画的问题

实现从主页跳转到搜索页,再从搜索页回退主页

withTransition(int resId,int resId)

这个方法两个参数

第一个的意思是, A 到 B, B 的入场动画

第二个的意思是,A 到 B, A 的出场动画

即,入场动画,出场动画,至于哪个是哪个,该哪个是哪个就哪个是哪个 :)

比如我这里,主页到搜索页,希望搜索页像放帘子一样下来,主页不动,所以在主页跳转时,只传入搜索页的入场动画即可。

MainActivity

ARouter.getInstance()

.build(MyRouter.ACTIVITY_SEARCH)

.withTransition(R.anim.slide_in_from_top,0)

.navigation(this);

当从搜索页回退到主页时,搜索页像卷帘子一样上去,主页依然不动,所以在搜索页跳转时,只传入搜索页出场动画即可。

当然,如果非要 finish 掉搜索页,可以写到 Callback 里面

SearchActivity

ARouter.getInstance()

.build(MyRouter.ACTIVITY_MAIN)

.withTransition(0, R.anim.slide_out_from_top)

.navigation(this, new NavigationCallback() {

@Override

public void onFound(Postcard postcard) {

}

@Override

public void onLost(Postcard postcard) {

}

@Override

public void onArrival(Postcard postcard) {

finish();

}

@Override

public void onInterrupt(Postcard postcard) {

}

});

以上要注意的一点是,单纯的使用ARouter可以navigation()不传当前Activity,如果要用上动画,必须传当前Activity,即:navigation(this),否则不生效!最好的习惯就是每次都传!(这一点,研究了我小半年, 一直没注意这点!!!)

下面是两个动画源码,两个文件都在res/anim目录下,没有的需要自己手动建立

3acd2cb16fabc14c53f0a883ed5b1870.png

slide_in_from_top.xml

slide_out_from_top.xml

另外还有常用的两个淡入淡出效果

fade_in.xml

fade_out.xml

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值