画布(视图)旋转动画在给定持续时间之前停止

时间:2017-11-14 05:10:31

标签: android performance animation android-animation

我试图在某些设备中将视图旋转特定持续时间(9秒),它完全运行9秒但在少数设备中动画在给定的持续时间之前停止。

它在三星s6,OPPO A37fw,VIVO Y21L,MI所有设备上完美运行,而不是在LYF Wind 5,SAMSUNG DUOS,2GB RAM的Xolo Tab,Android TV和其他一些设备上工作

public void rotateWheelToTarget(int target) {
    float wheelItemCenter = 270 - getAngleOfIndexTarget(target) + (360 / mWheelItems.size()) / 2;

    animate().setInterpolator(new DecelerateInterpolator())
            .setDuration(DEFAULT_ROTATION_TIME)
            .rotation((360 * 10) + wheelItemCenter)
            .setListener(new Animator.AnimatorListener() {
                @Override
                public void onAnimationStart(Animator animation) {

                }

                @Override
                public void onAnimationEnd(Animator animation) {
                    if (mOnLuckyWheelReachTheTarget != null) {
                        mOnLuckyWheelReachTheTarget.onReachTarget();
                    }

                    clearAnimation();
                }

                @Override
                public void onAnimationCancel(Animator animation) {

                }

                @Override
                public void onAnimationRepeat(Animator animation) {

                }
            })
            .start();
}

0 个答案:

没有答案