添加带动画的片段会导致片段在动画开始前闪烁

时间:2016-04-19 16:15:00

标签: android animation android-fragments

我正在添加一个片段,并从屏幕顶部向下设置动画。动画效果很好,但整个片段很快出现,然后消失,然后动画开始。我该如何摆脱这种闪光?

片段:( MyFrameLayout扩展FrameLayout以计算yFraction)     

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="New Button"
    android:id="@+id/button2"
    android:layout_gravity="left|center_vertical"/>

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="New Button"
    android:id="@+id/button3"
    android:layout_gravity="left|bottom"/>

showMenu从触发动画的onClick()调用: private void showMenu(){

    mDidSlideOut = true;

    // Get the fragment manager.
    FragmentTransaction ft = getFragmentManager().beginTransaction();

    // Set the animations.
    ft.setCustomAnimations(R.animator.slide_fragment_in, R.animator.slide_fragment_out);

    // Add to back stack
    ft.addToBackStack(m_backStackName);

    // Add the fragment.
    DropDownFragment newFragment = new DropDownFragment();
    ft.add(R.id.drop_down_container, newFragment);

    // Start the animated transition.
    ft.commit();
}

幻灯片放映:

<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
                android:interpolator="@android:anim/accelerate_decelerate_interpolator"
                android:valueFrom="-1.0"
                android:valueTo="0"
                android:propertyName="yFraction"
                android:valueType="floatType"
                android:duration="5000">
</objectAnimator>

闪光灯非常快,就像我说的那样,动画效果非常好。

0 个答案:

没有答案