Android——动画的实现

本次实验完成了一个时钟动画的制作。

其实完成本次实验相当简单,就用下Android的动画类Animation就行了,时钟的话主要应用旋转动画RotateAnimation,这个是Animation的子类。

实现动画有两种方法。一种是写布局文件,另一种是直接用Java代码实现。

由于时钟要调用本机时间,所以我用Java代码实现。

这里主要讲一下RotateAnimation的构造方法:

RotateAnimation(float fromDegrees, float toDegrees, 
            int pivotXType, float pivotXValue, int pivotYType, float pivotYValue)
//第一个参数fromDegrees为动画起始时的旋转角度    
//第二个参数toDegrees为动画旋转到的角度   
//第三个参数pivotXType为动画在X轴相对于物件位置类型  
//第四个参数pivotXValue为动画相对于物件的X坐标的开始位置
//第五个参数pivotXType为动画在Y轴相对于物件位置类型   
//第六个参数pivotYValue为动画相对于物件的Y坐标的开始位置
Animation animationRotate=new RotateAnimation(0.0f, +350.0f,
               Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF, 0.5f);//从0°开始转到350°,一图形中心为旋转中心

然后再设置旋转时长

animationRotate.setDuration(10000);//参数是以毫秒为单位
然后再让图形对象引用之即可。

还有一点,这个动画是默认运动先快后慢的,但是在时钟上要匀速:

LinearInterpolator lir = new LinearInterpolator();
animationRotate.setInterpolator(lir);

这样就能匀速旋转了。

上个图吧:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值