1

アクティビティのフラグメントにアニメーションを実装したいと考えています。ただし、フラグメントには通常のstartAnimation()方法は適用できません。

フラグメントにアニメーションを設定するにはどうすればよいですか? 以下は私のスニペットです:

Fragment listview = (Fragment)getSupportFragmentManager().findFragmentById(R.id.my_tab_fragment);
final Animation a = AnimationUtils.loadAnimation(this, R.anim.translate);
4

2 に答える 2

2

フラグメントの追加/削除をアニメーション化するには、次を使用する必要があります。

 getFragmentManager().beginTransaction()
                            .setCustomAnimation();

FragmentTransaction のドキュメントをご覧ください。

の前または上でsetCustomAnimation()、注意してメソッドを呼び出してください。add(fragment)replace(fragment)FragmentTransaction

于 2012-06-21T11:40:53.017 に答える
1

を使用しFragmentManagerて作成する必要があります。FragmentTransaction通常は、新しいアニメーションのスライドイン用と古いアニメーションのスライドアウト用の 2 つのアニメーションを使用できます。次のように、両方に使用します。

FragmentTransaction tx = getFragmentManager().beginTransaction();
tx.setCustomAnimations(a, a);
tx.replace(oldFragmentReference, newFragmentReference);
tx.commit();

これが役に立ったことを願っています。

于 2012-06-21T11:42:22.023 に答える