Android(安卓)Animation --- 无限360度旋转
16lz
2021-12-04
- 做过重复360度旋转的就知道,到达终点是略有卡顿/停顿
查看Animation.java源码
/** * Gurantees that this animation has an interpolator. Will use * a AccelerateDecelerateInterpolator is nothing else was specified. */ protected void ensureInterpolator() { if (mInterpolator == null) { mInterpolator = new AccelerateDecelerateInterpolator(); } }
发现默认使用的是加速插补器,所以到达终点出现卡顿/停顿,就是它导致的,更改为匀速的插补器即可
代码如下:
ObjectAnimator rotation = ObjectAnimator.ofFloat(hwLogoTurn, "rotation", 0f, 359f);//最好是0f到359f,0f和360f的位置是重复的rotation.setRepeatCount(ObjectAnimator.INFINITE);rotation.setInterpolator(new LinearInterpolator());rotation.setDuration(5000);rotation.start();
现在可以优哉游哉的跑了
更多相关文章
- Android旋转动画不停顿
- android中translate动画
- Android动画之 Alpha与Translate结合使用
- android animaltion Interpolator使用
- 短信验证码服务平台哪个好?
- 最新疫情数据报告已到达你的邮箱!
- 2021-03-10:一个数组上共有 N 个点,序号为0的点是起点位置,序号为N-
- Sql Server之旅——终点站 nolock引发的三级事件的一些思考
- Android(安卓)vector 标签 pathData