在使用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;
- }
- <?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%" />