Android编程实现仿心跳动画效果的方法
本文实例讲述了Android编程实现仿心跳动画效果的方法。分享给大家供大家参考,具体如下:
//按钮模拟心脏跳动
privatevoidplayHeartbeatAnimation(){
AnimationSetanimationSet=newAnimationSet(true);
animationSet.addAnimation(newScaleAnimation(1.0f,1.8f,1.0f,1.8f,
Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,
0.5f));
animationSet.addAnimation(newAlphaAnimation(1.0f,0.4f));
animationSet.setDuration(200);
animationSet.setInterpolator(newAccelerateInterpolator());
animationSet.setFillAfter(true);
animationSet.setAnimationListener(newAnimationListener(){
@Override
publicvoidonAnimationStart(Animationanimation){
}
@Override
publicvoidonAnimationRepeat(Animationanimation){
}
@Override
publicvoidonAnimationEnd(Animationanimation){
AnimationSetanimationSet=newAnimationSet(true);
animationSet.addAnimation(newScaleAnimation(1.8f,1.0f,1.8f,
1.0f,Animation.RELATIVE_TO_SELF,0.5f,
Animation.RELATIVE_TO_SELF,0.5f));
animationSet.addAnimation(newAlphaAnimation(0.4f,1.0f));
animationSet.setDuration(600);
animationSet.setInterpolator(newDecelerateInterpolator());
animationSet.setFillAfter(false);
//实现心跳的View
imageView.startAnimation(animationSet);
}
});
//实现心跳的View
imageView.startAnimation(animationSet);
}
由于这是一个循环的动画,所以需要开一个线程来进行动画的实现,当然还有另外一个方法,就是在一个动画结束开始另一个动画,在另一个动画结束开始这个动画也可以,这边示例用的是线程。
newThread(){
publicvoidrun(){
while(true){
try{
Thread.sleep(1000);
}catch(InterruptedExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
runOnUiThread(newRunnable(){
publicvoidrun(){
playHeartbeatAnimation();
}
});
}
};
}.start();
希望本文所述对大家Android程序设计有所帮助。
热门推荐
3 祝福语简短的微信
10 幼儿祝福语大全简短贺卡
11 感谢教官文案祝福语简短
12 鼠年同事祝福语简短创意
13 元旦祝福语 简短独特群发
14 妈咪跟我生日祝福语简短
15 给儿子新婚祝福语简短
16 伴娘祝福语长文案简短
17 恭喜高考完祝福语简短
18 生日祝福语送老公简短