如何为Fragment设置动画?

时间:2012-06-21 11:35:51

标签: android

我想在我的活动中为片段实现动画。 但是常规startAnimation()方法不适用于片段。

如何为我的片段设置动画? 以下是我的代码:

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

2 个答案:

答案 0 :(得分:2)

要添加/删除您应该使用的片段的动画:

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

您应该查看FragmentTransaction documentation

请小心并在setCustomAnimation()之前add(fragment)replace(fragment)之前调用FragmentTransaction方法。

答案 1 :(得分:1)

您需要使用FragmentManager创建一个FragmentTransaction通常情况下,您可以为新幻灯片放入一个动画,另一个幻灯片放出旧动画我将使用您的动画两者都是这样的:

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

希望这会有所帮助。