5

私は自分のAndroidランチャーを作成しています。

問題は:

  • アクティビティを開始すると、左にスライドします...
  • 閉じると右にスライドします...
  • これは迷惑で醜いです!

私はすでに起動アニメーションを削除することができました:

Intent launch_intent = new Intent("android.intent.action.MAIN");
launch_intent.addCategory("android.intent.category.LAUNCHER");
launch_intent.setComponent(new ComponentName(packageName, name));
launch_intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);

activity.startActivity(launch_intent);

私の目的は次のとおりです。

  • また、アプリケーションを閉じるアニメーションを削除します。
  • または、起動/終了のデフォルトのアニメーションを変更します。

前もって感謝します!

4

3 に答える 3

6

Android APIのデモを見てみました。「overridePendingTransition()」メソッドを使用する必要があることが示唆されたように、これは着信アクティビティのアニメーションと発信アクティビティのアニメーションを設定します。
メソッドは、startActivity()の後またはfinish()の後に追加する必要があります。

    Intent launch_intent = new Intent("android.intent.action.MAIN");
    launch_intent.addCategory("android.intent.category.LAUNCHER");
    launch_intent.setComponent(new ComponentName(packageName, name));  
    activity.startActivity(launch_intent);
    overridePendingTransition(R.anim.zoom_enter, R.anim.zoom_exit);

トランジションは標準のAndroidアニメーションです。たとえば、zoom_enterは次のようになります。

<set xmlns:android="http://schemas.android.com/apk/res/android"
        android:interpolator="@android:anim/decelerate_interpolator">
    <scale android:fromXScale="2.0" android:toXScale="1.0"
           android:fromYScale="2.0" android:toYScale="1.0"
           android:pivotX="50%p" android:pivotY="50%p"
           android:duration="@android:integer/config_mediumAnimTime" />
</set>

ユーザーが戻るボタンまたはホームボタンを押したときなど、アクティビティが閉じているときにもアニメーションを設定する場合は、overridePendingTransition()をonPause()メソッドに追加する必要があります。
アクティビティが他のアプリケーションによって起動されているときにアニメーションを設定する場合は、super.onCreate()の前にoverridePendingTransition()を追加します。

于 2011-10-25T19:40:33.703 に答える
1

標準のランチャーアニメーションを表示するには、メインのランチャーアクティビティに特定のテーマを適用する必要があります。このテーマはandroid:Theme.Wallpaperである必要があります(または継承されている必要があります)。 android:theme="@android:style/Theme.Wallpaper"

このようなテーマの場合、Android Frameworkは、標準のLauncherで表示される可能性のある特定のアニメーションを提供します。

于 2012-02-03T04:50:47.733 に答える
0

実はこれもイライラするアニメーションだと思うので、変更したかったのですが…………デフォルトのアニメーションなので…このリンクをチェックしてください… ..... http://developer.android.com/reference/android/view/animation/GridLayoutAnimationController.htmlなので、この問題の検索を停止しました...。

于 2012-01-02T08:52:45.577 に答える