activity切换的时候在默认状态下是没有动画的,体验会不是很好,可以添加一些自定义的动画,让activity的进入和推出有特效,感受会好一些
下面以点击按钮为例,点击下一页或者上一页的时候activity会出现切换,并添加切换的动画
动画文件保存在res/anim目录下面
下一页
tran_in.xml进入的时候进入的activity从100%长度移动到0,进入的activity占满屏幕
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="500"
android:fromXDelta="100%p"
android:toXDelta="0" >
</translate>
tran_out.xml进入的时候当前activity是从0坐标位置移动到-100%
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="500"
android:fromXDelta="0"
android:toXDelta="-100%p" >
</translate>
上一页
previout_in.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="500"
android:fromXDelta="-100%p"
android:toXDelta="0" >
</translate>
previous_out.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="500"
android:fromXDelta="0"
android:toXDelta="100%p" >
</translate>
样式的使用
逻辑代码
package com.ldw.safe.Activity;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import com.ldw.safe.R;
/*
* 手机防盗第一个设置向导页面
*/
public class Setup1Activity extends BaseSetupActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_setup1);
}
//显示下一页,这个需要子类去实现,跳转的页面不是固定的
public void showNext(){
//页面跳转
startActivity(new Intent(Setup1Activity.this, Setup2Activity.class));
//销毁当前页面
finish();
//两个界面的切换动画
overridePendingTransition(R.anim.tran_in, R.anim.tran_out);//进入动画和推出动画
}
//没有上一页,什么都不做
@Override
public void showPrevious() {
// TODO Auto-generated method stub
}
}