(原)android中的动画(三)之动画监听&页面切换动画

本文介绍了在Android中如何为动画设置监听事件,以便在动画结束时执行特定操作,以及如何使用overridePendingTransition方法实现页面切换时的动画效果,包括自定义动画XML文件的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.动画也可以设置监听事件,例如在动画结束时需要执行某操作

把要执行的代码写在onAnimationEnd()回调方法中即可:

anim.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
  //doSomething();
}
});
}

2.页面切换动画

当我们需要带有动画地从一个activity切换到另一个activity时,可能需要用到下面这个函数

overridePendingTransition(int inAnimId,int outAnimId);

其中两个int参数分别是下个页面进入的动画xml文件和本页面退出的动画xml文件

这两个文件可以使用系统自带的,例如android.R.anim.slide_in_left, android.R.anim.slide_out_right

或者也可以自定义xml文件,例如:

进入动画(go_right.xml):

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">

    <translate
        android:duration="2000"
        android:fromXDelta="100%p"
        android:toXDelta="0"
         />

</set>

 

退出动画(go_left.xml):

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">

    <translate
        android:duration="2000"
        android:fromXDelta="0"
        android:toXDelta="-100%p"
         />

</set>

 

跳转页面的代码这样写:

public void next(View v) {
        Intent intent = new Intent(this, SecondActivity.class);
        startActivity(intent);
        overridePendingTransition(R.anim.go_right,
                R.anim.go_left);
    }

这样就可以实现类似viewPager的页面切换效果了.

转载于:https://www.cnblogs.com/BlogCommunicator/p/4917176.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值