概述
1、overridePendingTransition()方法
Activity的切换动画指的是从一个activity跳转到另外一个activity时的动画。
/**
* 实现Activity切换时的动画
*
* @param enterAnim ToActivity进入的动画(第二个进入)
* @param exitAnim FromActivity退出的动画(第一个退出)
*/
public void overridePendingTransition(int enterAnim, int exitAnim);
overridePendingTransition()方法,有两点需注意:
1)必须紧挨着startActivity()或者finish()函数之后调用
2)只在android2.0以及以上版本上适用
2、示例
在res目录下新建anim文件夹,在anim文件夹中新建4个xml:
left_out.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromXDelta="0%"
android:toXDelta="-100%"
android:duration="300" />
left_in.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromXDelta="-100%"
android:toXDelta="0%"
android:duration="300" />
right_in.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromXDelta="100%"
android:toXDelta="0%"
android:duration="300" />
right_out.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromXDelta="0%"
android:toXDelta="100%"
android:duration="300" />
OneActivity进入TwoActivity:
findViewById(R.id.id_btn_enter).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(OneActivity.this, TwoActivity.class));
//OneActivity -> TwoActivity
//第一个参数R.anim.right_in : TwoActivity进入的动画(to Activity)
//第二个参数R.anim.left_out : OneActivity退出的动画(from Activity)
overridePendingTransition(R.anim.right_in, R.anim.left_out);
}
});
TwoActivity退出返回OneActivity:
findViewById(R.id.id_btn_exit).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
//TwoActivity -> OneActivity
//第一个参数R.anim.left_in : OneActivity进入的动画(to Activity)
//第二个参数R.anim.right_out : TwoActivity退出的动画(from Activity)
overridePendingTransition(R.anim.left_in, R.anim.right_out);
}
});
最后
以上就是贤惠树叶为你收集整理的Activity切换动画的全部内容,希望文章能够帮你解决Activity切换动画所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复