Performing action after fragment transaction animation is finished

前端 未结 5 594
旧巷少年郎
旧巷少年郎 2020-11-30 01:23

I want to set a buttons visibility after the animation is finished.

That\'s what calls the animation:

android.support.v4.app.FragmentTransaction fAni         


        
5条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-11-30 01:32

    You need to subclass Fragment and override onCreateAnimator, then you can load those animations from XML and attach listeners to them.

    E.g.

    public class MyFragment extends Fragment
    {
        @Override
        public Animator onCreateAnimator(int transit, boolean enter, int nextAnim)
        {
            final int animatorId = (enter) ? R.anim.in_anim : R.anim.out_anim;
            final Animator anim = AnimatorInflater.loadAnimator(getActivity(), animatorId);
            anim.addListener(new AnimatorListenerAdapter()
            {
                @Override
                public void onAnimationStart(Animator animation)
                {
                    ...
                }
    
                @Override
                public void onAnimationEnd(Animator animation)
                {
                   ...
                }
            });
    
            return anim;
       }    
    

提交回复
热议问题