1. 程式人生 > >Android Activity切換動畫 overridePendingTransition

Android Activity切換動畫 overridePendingTransition

設定開啟新頁面時介面從右側進入,退出時從右側滑出:

進入時

Intent intent = new Intent(this,activity);
startActivity(intent);
overridePendingTransition(R.anim.in_from_right, R.anim.out_from_left);

退出時

finish();
overridePendingTransition(R.anim.in_from_right, R.anim.out_from_left);

in_from_right.xml:

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

android:fromXDelta="100%p" 

android:toXDelta="0%p"

        android:duration="250" />

out_from_left.xml:

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

android:fromXDelta="0%p" 

android:toXDelta="100%p"

        android:duration="250" />


有時候

overridePendingTransition 這個函式會不起作用,可能是以下三個方面的原因:

1、android系統版本2.0以下,這個沒辦法,想其他辦法解決切換動畫吧。 2、在ActivityGroup等的嵌入式Activity中,這個比較容易解決,用如下方法就可以了:     this.getParent().overridePendingTransition 就可以解決。 3、在一個Activity的內部類中,或者匿名類中,這時候只好用handler來解決了。