我是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文件,我必须硬编码fromXDelta
和toXDelta
值等,但我希望这些值在用户点击屏幕的任何地方都是动态的。我想,我可能无法使用XML文件执行此操作。还有其他办法吗?
我尝试像这样试验AnimationSet
:
final AnimationSet animEnter = new AnimationSet( true );
Animation trans = new TranslateAnimation( 0, 0, 500, 0);
trans.setDuration( 140 );
animEnter.addAnimation( trans );
但我不知道如何将AnimationSet
与FragmentTransaction
一起使用。
感谢任何帮助。
答案 0 :(得分:0)
对于动态动画,你可以设置setCustomAnimations(0,0)来设置系统没有动画,然后从下一个片段中你可以在片段的onCreate方法中设置转换对象Here()。