我有2个片段,我正在动画一个上升和下来,一个从左边进入。
首先显示的片段位于画布的中心。
但是当transaction.setcustomanimation开始时,片段会跳转到其原始位置上方的某个位置,然后开始制作动画。
如何让片段动画从它最初放置在屏幕中心的位置开始,而不是跳到另一个位置然后制作动画。
anim/exit.xml
<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
android:propertyName="y"
android:valueType="floatType"
android:valueFrom="0"
android:valueTo="-500"
android:duration="3500"/>
starting activity
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.setCustomAnimations(R.anim.enter, R.anim.exit);
FragRegister fragRegister = new FragRegister();
fragmentTransaction.replace(R.id.SplashLogo_Fragment, fragRegister, "register");
fragmentTransaction.commit();
答案 0 :(得分:1)
值与您的视图无关。因此你的行android:valueFrom =“0”将首先移动你的片段然后动画。一起删除该行。我只在objectanimator xml中设置了valueTo参数。