2

私はAndroidが初めてです。新しいアクティビティを開くとき、オープニング アクティビティのフェードイン アニメーションを作成する必要があります。例: 現在、私はアクティビティ "A" にいますが、ボタン クリックで別のアクティビティ "B" を開きたいと考えています。これで、アニメーションなしでアクティビティを開くことができました。しかし、フェードインアニメーションを付けたいと思います。現在、次のコードを使用してアクティビティを開きます。

Intent profileActivity = new Intent(Login.this, Profile.class);
startActivityForResult(profileActivity, 0);

ここで、「profileActivity」がフェードイン アニメーションで開くはずです。アニメーションを作成するために上記のコードで何ができるでしょうか。

前もって感謝します。

4

5 に答える 5

7

フェードアニメーション R.anim.fade のコードです

 <alpha xmlns:android="http://schemas.android.com/apk/res/android"
           android:interpolator="@android:anim/accelerate_interpolator"
           android:fromAlpha="0.0" android:toAlpha="1.0"
           android:duration="@android:integer/config_longAnimTime" />
于 2012-05-17T09:23:47.997 に答える
7

この行を呼び出しインテントに追加するだけです:

overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_left);

次のようになります。

Intent intent = new Intent(ActivityA.this, ActivityB.class);
        startActivity(intent);
        overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_left);

次に、「res」フォルダーの下に「anim」フォルダーを作成し、これら 2 つの xml ファイルを追加します。

slide_in_left.xml

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
     android:duration="@android:integer/config_mediumAnimTime"
    android:fromXDelta="100%"
    android:toXDelta="0%" />

slide_out_left.xml

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
     android:duration="@android:integer/config_mediumAnimTime"
    android:fromXDelta="0"
    android:toXDelta="-100%" />

ご覧のとおり、フェード効果を追加したい場合は、翻訳アニメーションを行っているだけです。

android:fromAlpha="0.0" android:toAlpha="1.0"

それが役立つことを願っています。

于 2012-05-17T09:21:15.360 に答える
2

@moujibの回答に感謝します、私はそれを前に知りませんでした。私がしたことは、2番目のアクティビティが開始されるとすぐにアニメーションを手動で適用することです。overridePendingTransition()の使用は、はるかにクリーンです(api 5以降で使用可能です)。@moujibの回答は別として、Androidで既に定義されているため、フェードインアニメーションを自分で定義する必要はありません。こちらをご覧くださいhttp://developer.android.com/reference/android/R.anim.html

于 2012-05-17T09:32:14.967 に答える
0

アンドロイド アニメーション

ウェルカム ページに進行状況バーを配置できます。上記のリンクは、アクティビティにアニメーションを追加する方法に役立ちます。

于 2012-05-17T09:20:06.153 に答える