使用旋转动画实现刻度表
程序员文章站
2022-07-13 11:43:12
...
实现一个仪表:
指针可以旋转,UI提供指针。
@BindView(R.id.iv_pointer)
ImageView ivPointer;
...
private void setPointer(float temp){
float proportion = 0.925f;//温度与刻度的比例
float angle = proportion*temp;
if (Math.abs(angle - lastTemp) < 0.5){
return;
}
if (angle > 250*proportion)
angle = 250*proportion;
if (angle < 0)
angle = 0;
Animation anim =new RotateAnimation(lastTemp, angle, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
anim.setFillAfter(true); // 设置保持动画最后的状态
anim.setDuration(500); // 设置动画时间
anim.setInterpolator(new AccelerateDecelerateInterpolator()); // 设置插入器
ivPointer.startAnimation(anim);
lastTemp = angle;
}
上一篇: Android 旋转动画实现抽奖转盘
推荐阅读
-
Python使用win32com模块实现数据库表结构自动生成word表格的方法
-
使用表类型(Table Type-SqlServer)实现百万级别的数据一次性毫秒级别插入
-
Android使用ListView实现滚轮的动画效果实例
-
使用DataList实现 加入购物车,编辑,删除,更新,取消功能。要求连一个产品表。
-
iOS基于CATransition实现翻页、旋转等动画效果
-
使用 electron 实现类似新版 QQ 的登录界面效果(阴影、背景动画、窗体3D翻转)
-
CSS3实现同时执行倾斜和旋转的动画效果
-
Laravel Eloquent分表方法并使用模型关联的实现
-
使用OpenCV实现仿射变换—旋转功能
-
Flash AS代码实现五彩缤纷旋转效果动画