使用顺序动画更改片段

时间:2015-11-18 15:07:33

标签: android android-fragments android-animation

我无法找到如何在两个片段之间连续制作动画。可能吗? 例如。我有fragmentA和fragmentB。我可以制作动画

 getSupportFragmentManager.beginTransaction()
                    .setCustomAnimations(R.anim.fragment_fade_in, R.anim.fragment_fade_out)
                    .replace(fragmentB)
                    .commit(); 

但动画一起显示。我需要场景:

  1. 使用动画删除fragmentA
  2. 等一下ms
  3. 添加带动画的fragmentB
  4. 我找到了解决方案,但我认为这不好。

    Handler mSequentiallyFrgAnimHandler = new Handler(Looper.getMainLooper());
       //first remove preview fragment
       getSupportFragmentManager().beginTransaction()
                        .setCustomAnimations(0, R.anim.fragment_fade_out)
                        .remove(fragmentA)
                        .commit();
     //we need animations sequentially, wait 400ms between animations
     mSequentiallyFrgAnimHandler.postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        getSupportFragmentManager().beginTransaction()
                                .setCustomAnimations(R.anim.fragment_fade_in, 0)
                                .add(fragmentB)
                                .commit();
                    }
                }, 400);
    

    有人能举个例子吗?它是如何正确的?

0 个答案:

没有答案