Android 之overridePendingTransition初识 Activity跳转动画以及无动画效果

本文详细介绍了Android中使用overridePendingTransition函数实现过渡动画的方法,包括其调用时机、常见问题及解决方案,如在ActivityGroup和内部类中应用动画,以及如何开启手机显示动画效果。文章还解释了函数参数含义,并提供了具体示例,展示如何实现登录Activity从底部弹出并反方向消失的效果。

1、verridePendingTransition函数必需紧挨着startActivity()或者finish()函数之后调用
2、不过有时候overridePendingTransition 这个函数会不起作用,大概是以下三个方面的原因:

  • 在ActivityGroup等的嵌入式Activity中,这个比较容易解决,用如下方法就可以了:
    this.getParent().overridePendingTransition 就可以解决。

  • 在一个Activity的内部类中,或者匿名类中,这时候只好用handler来解决了。

  • 手机的显示动画效果被人为或者其他方式给关闭了 现在打开即可 设置->显示->显示动画效果

3.、关于其中的两个参数:

  • 第一个参数:将要显示的Activity显示的动画
  • 第二个参数:将要消失的Activity消失的动画
    参数为0:即为无动画效果
    overridePendingTransition(0,0);

4、简单示例
目标要实现点击弹出登录的Activity,要求是登陆的Activity从底部弹出,然后finish的时候反方向消失。
在这里插入图片描述

  startActivity(i);
  overridePendingTransition(R.anim.push_in, 0);

  finish();
  overridePendingTransition(0,R.anim.push_out);

push_out.xml

	<?xml version="1.0" encoding="utf-8"?>
	<set xmlns:android="http://schemas.android.com/apk/res/android">
	    <translate android:fromYDelta="100%p" android:toYDelta="0" android:duration="300"/>
	</set>

push_in.xml

	<?xml version="1.0" encoding="utf-8"?>
	<set xmlns:android="http://schemas.android.com/apk/res/android">
	    <translate android:fromYDelta="0" android:toYDelta="100%p" android:duration="300"/>
	</set>
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

隔壁de小刘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值