5

フラグメントの翻訳にアニメーションを適用します。アニメーション リスナーを追加して、アニメーションの開始/終了イベントを検出できますか?

皆さんありがとう。

4

1 に答える 1

14

のカスタム アニメーション メソッドを使用するのではなく、カスタム フラグメント内でオーバーライドする場合onCreateAnimation()(または3.0 以降のフラグメントを使用している場合...両方ともリスナーを許可する場合) にアニメーションを提供できます。onCreateAnimator()FragmentTransaction

@Override
public Animation onCreateAnimation (int transit, boolean enter, int nextAnim) {
    Animation anim;
    if (enter) {
        anim = AnimationUtils.loadAnimation(getActivity(), android.R.anim.fade_in);
    } else {
        anim = AnimationUtils.loadAnimation(getActivity(), android.R.anim.fade_out);
    }

    anim.setAnimationListener(new AnimationListener() {
        public void onAnimationEnd(Animation animation) { }

        public void onAnimationRepeat(Animation animation) { }

        public void onAnimationStart(Animation animation) { }
    });

    return anim;
}
于 2012-07-18T16:14:02.900 に答える