2012-09-04 62 views
4

我想要應用HTC手機具有的活動轉換:當您開始一個新的活動時,會有一個從右向左的滑動,但是當您按返回按鈕返回到先前的活動,有一個從左到右的幻燈片動畫。Android中的活動轉換動畫

我在我的活動的onResume中使用overridePendingTransition來模擬幻燈片從右到左的動畫,但是當我按下後退按鈕時,執行相同的動畫是錯誤的(從結果的角度來看)。

因此,我想問一下如何管理一個Activity有不同的動畫,一個是創建時的動畫,另一個是用戶按下返回鍵時的動畫。

非常感謝!

回答

7

要當用戶按下後退按鈕定義動畫,你必須覆蓋onBackPressed()Activity,並在那裏使用overridePendingTransition()

public void onBackPressed() { 
    super.onBackPressed(); 
    overridePendingTransition(R.anim.in_from_left, R.anim.out_to_right); 
} 

所以當返回按鈕被按下這個動畫纔會顯示。

給新活動開啓時設定的動畫,你只需要定義動畫,你叫startActivity()或類似後:

startActivity(some_intent); 
overridePendingTransition(R.anim.in_from_right, R.anim.out_to_left); 
+0

謝謝,我會檢查出來,並告訴你:) –

+0

是什麼'overridePendingTransition'方法中的'anim'。是我們想要動畫的視圖嗎? – astuter

+0

@ I-droid不,這是動畫資源http://developer.android.com/guide/topics/resources/animation-resource.html#View – Floern