4

HTC フォンにあるようなアクティビティ トランジションを適用したい: 新しいアクティビティを開始すると、右から左へのスライドが表示されるが、戻るボタンを押して前のアクティビティに戻ると、左にスライドが表示される-右へのアニメーション。

アクティビティでを使用overridePendingTransitionしてonResume右から左へのスライド アニメーションをシミュレートしましたが、戻るボタンを押すと同じアニメーションが実行されますが、これは間違っています (結果の観点から)。

したがって、アクティビティの作成時とユーザーが戻るキーを押したときの異なるアニメーションを管理する方法を尋ねたいと思います。

どうもありがとう!

4

2 に答える 2

8

ユーザーが戻るボタンを押したときのアニメーションを定義するには、オーバーライド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);
于 2012-10-01T14:35:05.500 に答える