添加到返回栈的片段动画

3

如何在使用addToBackStack()时设置动画?

我的旧片段需要保持不变,新片段应该通过动画重叠在旧片段上并显示给用户。

我尝试了setCustomAnimation(),但是无法实现。

有人能帮我吗?


你是指这个吗?https://dev59.com/1Ggv5IYBdhLWcg3wCsc8 - ains
1个回答

1

当您要添加片段时,可以使用FragmentTransaction类来设置动画效果。

就像这样...

FragmentManager fm = activity.getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();

MyFragment fragment = new MyFragment();

    ft.add(android.R.id.content,fragment ,TAG);
    ft.setTransition(FragmentTransaction.TRANSIT_ENTER_MASK);
    ft.addToBackStack(null);
    ft.commit();

这应该将您当前的片段放在任何其他内容的顶部,而不会删除任何内容。 "setTransition"动画将动画化片段入口,但我建议尝试使用"setCustomAnimations"来完全控制片段的动画效果。


setTransition doesn't accept value of TRANSIT_ENTER_MASK. From the docs: Select a standard transition animation for this transaction. May be one of TRANSIT_NONE, TRANSIT_FRAGMENT_OPEN, TRANSIT_FRAGMENT_CLOSE, or TRANSIT_FRAGMENT_FADE. ` - j2ko

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接