使用动态自定义动画显示片段

时间:2017-03-30 17:53:24

标签: android xml android-fragments android-animation

我是Android新手,很难动态显示动画片段。

到目前为止,我使用如下所示的XML文件来制作片段,这很好。

FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.setCustomAnimations(R.anim.enter, R.anim.exit, R.anim.pop_enter, R.anim.pop_exit);
transaction.add(R.id.task_fragment_container, fragment);
transaction.addToBackStack(null);
transaction.commit();

问题在于XML文件,我必须硬编码fromXDeltatoXDelta值等,但我希望这些值在用户点击屏幕的任何地方都是动态的。我想,我可能无法使用XML文件执行此操作。还有其他办法吗?

我尝试像这样试验AnimationSet

final AnimationSet animEnter = new AnimationSet( true );
Animation trans = new TranslateAnimation( 0, 0, 500, 0);
trans.setDuration( 140 );
animEnter.addAnimation( trans );

但我不知道如何将AnimationSetFragmentTransaction一起使用。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

对于动态动画,你可以设置setCustomAnimations(0,0)来设置系统没有动画,然后从下一个片段中你可以在片段的onCreate方法中设置转换对象Here()。