1. ホーム
  2. アンドロイド

[解決済み】Android 左から右へのスライドアニメーション

2022-04-23 23:42:55

質問

起動モードがシングルインスタンスのアクティビティが3つあります。

使用方法 onfling() 左右に振っています。

問題は、右から左にスワイプしたときのスライド遷移は問題ないのですが、左から右にスワイプしたときに、右から左にスワイプしたときの遷移が発生することです。

常に新しいインテントを送信しているため、この現象が起こることはわかっています。しかし、今度は左から右へスライドするアニメーションを変更する必要があります。

というメソッドがあるのは知っています。 overridingTransitionPending() しかし、XMLでどのようにアニメーションを定義すればよいのかわかりません。

どのように解決するのですか?

このxmlを res/anim/

左から右へのアニメーション用です。

<set xmlns:android="http://schemas.android.com/apk/res/android"
     android:shareInterpolator="false">
  <translate android:fromXDelta="-100%" android:toXDelta="0%"
             android:fromYDelta="0%" android:toYDelta="0%"
             android:duration="700"/>
</set>

右から左へのアニメーション用です。

<set xmlns:android="http://schemas.android.com/apk/res/android"
     android:shareInterpolator="false">
  <translate
     android:fromXDelta="0%" android:toXDelta="100%"
     android:fromYDelta="0%" android:toYDelta="0%"
     android:duration="700" />
</set>

コーディングでは、left to rightのようにインテントを使用します。

this.overridePendingTransition(R.anim.animation_enter,
                   R.anim.animation_leave);

コーディングでは、右から左のようにインテントを使用します。

this.overridePendingTransition(R.anim.animation_leave,
                               R.anim.animation_enter);