5

すでに何人かの人々が同じことを尋ねているのを見つけましたが、解決策は私にとってはうまくいきませんでした.

アニメーションが表示されません。

このように呼び出す:

Intent intent = new Intent(this, MyActivity.class);
startActivity(intent);
overridePendingTransition(R.anim.fadein, R.anim.fadeout);

fadein.xml と fadeout.xml は anim フォルダーにあります。

フェードイン.xml:

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

    <alpha
        android:duration="1000"
        android:fromAlpha="0.0"
        android:interpolator="@android:anim/accelerate_interpolator"
        android:toAlpha="1.0" />
</set>

フェードアウト.xml:

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

  <alpha
      android:duration="1000"
      android:fromAlpha="1.0"
      android:interpolator="@android:anim/accelerate_interpolator"
      android:toAlpha="0.0" />

</set>

使用分 API 7:

マニフェスト:

<uses-sdk android:minSdkVersion="7"/>

API 7 は私の project.properties ファイルにもあります。

target=android-7

私は何を間違っていますか?

PD インターポレーターで行を削除しても、何も変わりません。

すでに見た/試した:

overridePendingTransition が機能しない

FLAG_ACTIVITY_REORDER_TO_FRONT が使用されている場合、overridePendingTransition は機能しません

Android の前のアクティビティからのアクティビティのフェードイン

Android の前のアクティビティからのアクティビティのフェードイン

Android でのアクティビティ遷移

4

4 に答える 4

16

問題は、少なくともSamsung Galaxyの場合、これが機能するためにはデバイスでアニメーションを有効にする必要があるということでした。これは設定メニューで行うことができます。

于 2012-07-09T09:04:42.257 に答える
14

[設定] > [開発者向けオプション]を使用して、デバイスでオフにしていないことを確認する必要があります。

ここに画像の説明を入力

Transition animation scaleをオンにする必要があります。

于 2015-03-13T17:51:26.523 に答える
3

あなたが言ったように、一部の Samsung デバイス (おそらく他のデバイス) では、[設定] -> [表示] -> [アニメーション] の [すべてのアニメーション] オプションを選択する必要があり、デフォルトの [いくつかのアニメーション] ではありません。

于 2012-09-02T07:30:16.393 に答える
0

アニメーションが機能しないために発生する可能性のある問題は、現在のアクティビティが、意図した次のアクティビティと異なるためです。アニメーションを作成する代わりに、彼は現在のアクティビティを破壊するため、アニメーションが表示されないため、両方のアクティビティが同じ方向にあることを確認してください。

于 2014-05-26T21:23:11.053 に答える