在使用Activity的过程中,随着越来越多的activity的使用,我们可能要考虑他们的切换效果了,使之更有层次
切换效果如下:
A→B:
/**
* 跳转Activity时右进左出的动画
* @param paramIntent
*/
public void startActivityWithAnim(Intent paramIntent) {
startActivity(paramIntent);
overridePendingTransition(R.anim.slide_in_from_right, R.anim.slide_out_from_left);
}
以及对应的anim:
slide_in_from_right.xml:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="200"
android:fromXDelta="100.0%"
android:fromYDelta="0.0%"
android:toXDelta="0.0%"
android:toYDelta="0.0%" />
slide_out_from_left.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="200"
android:fromXDelta="0.0%"
android:fromYDelta="0.0%"
android:toXDelta="-100.0%"
android:toYDelta="0.0%" />
A←B:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
onBackPressed();
overridePendingTransition(R.anim.slide_in_from_left,
R.anim.slide_out_from_right);
return true;
}
return false;
}
slide_in_from_left.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="200"
android:fromXDelta="-100.0%"
android:fromYDelta="0.0%"
android:toXDelta="0.0%"
android:toYDelta="0.0%" />
slide_out_from_right.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="200"
android:fromXDelta="100.0%"
android:fromYDelta="0.0%"
android:toXDelta="0.0%"
android:toYDelta="0.0%" />