java钟表动画_钟表动画的实现
1,android中凡是牵涉到动画一般需要线程,及在线程中进行一定时间的休眠来实现。(除了系统自带的几种animation)
2,在项目中需要每个钟表的色块需要实现从0点至当前时间的顺序添加代表不同时钟的色块,并且需要根据等级选择不同颜色的色块。
实现的步骤如下:
(1)将不同颜色,代表不同时刻的图片资源id利用二维数组来表示:
private int[] levels={1,3,2,1,2,2,3,2,1,3,1};
public static int[][] imgs ={
{ R.drawable.brown1, R.drawable.brown2, R.drawable.brown3,
R.drawable.brown4, R.drawable.brown5, R.drawable.brown6,
R.drawable.brown7, R.drawable.brown8, R.drawable.brown9,
R.drawable.brown10,R.drawable.brown11 },
{ R.drawable.red1, R.drawable.red2, R.drawable.red3,
R.drawable.red4, R.drawable.red5, R.drawable.red6,
R.drawable.red7, R.drawable.red8, R.drawable.red9,
R.drawable.red10,R.drawable.red11 },
{ R.drawable.green1, R.drawable.green2, R.drawable.green3,
R.drawable.green4, R.drawable.green5, R.drawable.green6,
R.drawable.green7, R.drawable.green8, R.drawable.green9,
R.drawable.green10 ,R.drawable.green11} };
(2)接下来主线程的代码如下:
private voidgenerateClock() {//首先添加钟表的背景图片
ImageView clock=new ImageView(ShouyeActivity.this);
clock.setImageResource(com.bobo.mylvluo.R.drawable.clock_bg);
frame_clock.addView(clock);//开启线程
newAddImgThread().start();
}
(3)而实现动画的线程如下:(记得,主线程中的UI未必只有while)
class AddImgThread extendsThread{public voidrun(){for(int i=0;i
Message msg=newMessage();
msg.arg1=i;
handler.sendMessage(msg);try{
Thread.sleep(200);
}catch(InterruptedException e) {//TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
(4)在主界面更新UI的handler为
private Handler handler=newHandler(){
@Overridepublic voidhandleMessage(Message msg) {super.handleMessage(msg);int i=msg.arg1;
ImageView img=new ImageView(ShouyeActivity.this);//其中i+1代表的是时间;level【i】代表i+1时间的空气质量等级,img【levels【i】-1】【i】代表的是对应的图片
img.setImageResource(Constant.imgs[levels[i]-1][i]);//为其添加一个位移的动画效果
TranslateAnimation ani=newTranslateAnimation(5f,0f,5f,0f);
ani.setDuration(200);
frame_clock.addView(img);
img.setAnimation(ani);
}
};
java钟表动画_钟表动画的实现相关推荐
- java实现曲线运动_分层动画实现元素的曲线运动
在前端实现元素的动画需要用到transition或者animation搭配transform做位移的效果,但这只能实现元素沿着直线运动.如果想要让元素沿着曲线运动,则需要用到本文介绍的"分层 ...
- canvas 擦除动画_帧动画的多种实现方式与性能对比
作者: 前端向朔 from 迅雷前端 本文目录 Web 动画形式 应用场景 素材准备 实现方案 一.GIF 图 二.CSS3 帧动画 三.JS 帧动画 方案总结 注意事项 总结 Web 动画形式 首先 ...
- layui 表格加载动画_巴州动画
巴州动画,北京于萍画室新疆校区十九年沉淀,新疆再续辉煌北京于萍画室成立于2001年,在经历了19年磨砺与沉淀之后,已形成了师资力量雄厚,教学体系严谨,造型.设计.国画.实验艺术.建筑.动画综合齐头并进 ...
- flutter 点击旋转动画_让动画实现更简单,Flutter 动画简易教程!
Flutter中的动画功能强大且易于使用.接下来通过一个具体的实例,您将学到关于 Flutter 动画的一切. 难度:中级 今天,我们无法想象移动应用程序里面没有任何动画,当您从一页跳转到另一页时,或 ...
- opengl动画_物理动画流体实现流程(Physically Based Fluid Animation)
0 说在开始 发现介绍物理动画实现流程的文章较少,入门需要一定时间,所以才有了这篇文章.此文章不具体介绍算法部分和数学公式,例如SPH.欧拉公式.NS公式.弹簧质点模型等等,而是如何去构造自己的第一个 ...
- css3宽度变大动画_【动画演示】流量计的工作原理,真涨见识!
[培训]多热源联网供热技术与管网水力平衡调配技术培训班(2020年7月9-11日 泰安市) 本文转自:除灰脱硫脱硝技术联盟 流量计(Flowmeter)是工业生产的眼睛,与国民经济.国防建设.科学研究 ...
- 缓动动画_核心动画概念:缓入缓出
缓动动画 With the arrival of CSS transitions, animation is now completely at home on web pages. In anima ...
- maya导入abc动画_人物动画极速制作宝典分享!再也不用担心项目周期不够了
作者 | 朱亚东 订阅 | 010-86092062 项目周期有限,怎样才能完成人物动画的极速制作呢?日前,有业内"活雷锋"发现了一款人体建模软件MakeHuman,并分享了其制作 ...
- 怎樣制作线段动画_线条动画视频制作 如何制作线条运动图?线条动态图制作...
上周广东终于成功入秋,但是为什么,此刻小编感觉到很热嘞~广东这个天气真的是一年四季随机循环的啊~哈哈.好啦,不说废话,来看看今天的教程方案吧!线条动画大家知道是什么意思嘛?就是画面中有线条在运动的动画 ...
- vue 企业发展历程动画_三维动画的发展简史
天津三维动画作为电脑的美术的一个分支,是建立在动画的艺术和电脑软硬件技术发展基础上而形成的一种相对的独立新型的艺术的形式.早期主要应用于军事的领域.直到70年代后期,随着PC机的出现,计算机的图形学才 ...
最新文章
- 网络编程学习笔记(获取所有网络接口)
- Docker 持久化存储
- Visula Basic程序设计理论与实践pdf
- CodeForces - 363D Renting Bikes(二分+贪心)
- STM32、Cortex-M3和ARMv8-M之间的关联
- WebHelper类
- “苹果正在走下神坛” | 畅言
- 2022 AAAI 多模态/情感分析/命名实体识别/(信息抽取)关系抽取/知识图谱(知识蒸馏)/阅读理解 论文一览表
- 利用有序队列寻找最大的K个数
- 遗传算法的简介与应用详细过程
- Docker | 基于docker启动jar包,并进行更新
- 【电商吧 - 3】支付第一步,支付宝网页支付!
- Jeffrey Dean联署论文 The Case for Learned Index Structures
- 纳米机器人最新进展(2021年)
- activiti获取偏移量minx与miny
- matlab迭代法求超越方程,matlab fsolve函数求解超越方程
- python外汇交易回测系统_StarQuant - 综合量化交易回测系统/平台
- 大剖析:中国数万亿家装市场,为何出不了一个30亿美金的Houzz?
- 大物实验计算弹性模量_大学物理实验报告(清华大学)拉伸法测弹性模量.doc...
- [日推荐]『明星在哪儿』这可能是你离爱豆最近的一次!