2

そのようなAndroid マテリアル デザインで導入された新しいトランジションが好きです。

ここに画像の説明を入力

しかし、 Drawer でアイテムを選択した後にフラグメントを置き換えたときに使用したい:

fragmentManager.beginTransaction().replace(R.id.container, fragment).commit();

それは可能ですか?EnterTransition/ExitTransitionExplode遷移アニメーションで同じロジックを使用しました。

4

1 に答える 1

1

これらのトランジションはアクティビティ用であり、フラグメント用ではありません。以下のドキュメントを参照してください。これらはwindowExitTransitionおよびwindowEnterTransitionに指定されています

<style name="BaseAppTheme" parent="android:Theme.Material">
  <!-- enable window content transitions -->
  <item name="android:windowContentTransitions">true</item>

  <!-- specify enter and exit transitions -->
  <item name="android:windowEnterTransition">@transition/explode</item>
  <item name="android:windowExitTransition">@transition/explode</item>

  <!-- specify shared element transitions -->
  <item name="android:windowSharedElementEnterTransition">
    @transition/change_image_transform</item>
  <item name="android:windowSharedElementExitTransition">
    @transition/change_image_transform</item>
</style>

fragmenttransanction でトランジションを指定するだけでなく、フラグメントについても同じことを達成することができます 。

于 2015-06-17T16:13:01.387 に答える