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的页面切换效果了.