Android开发重写Animation实现下拉图片后弹射回去效果示例
本文实例讲述了Android开发重写Animation实现下拉图片后弹射回去效果。分享给大家供大家参考,具体如下:
1.解析:
1)interpolatedTime指的是平移的变化率(从0到1)
2)mStartHeight控件开始的高度
3)endHeight控件竖直移动后的高度
4)mImageView.requestLayout();图片在改变高度后填充布局并固定
5)ValueUtil.evalute(interpolatedTime,mStartHeight,mEndHeight)+0.5f)得到变化后的高度
2.代码:
/**
*@描述使用平移动画实现下拉图片后弹射回去
*@项目名称App_imooc
*@包名com.android.imooc.paralla
*@类名ResetAnimation
*@authorchenlin
*@date2015年5月29日下午12:27:00
*@version1.0
*/
publicclassResetAnimationextendsAnimation{
privateImageViewmImageView;
privateintmStartHeight;
privateintmEndHeight;
publicResetAnimation(ImageViewimageView,intstartHeight,intendHeight){
this.mImageView=imageView;
this.mStartHeight=startHeight;
this.mEndHeight=endHeight;
setDuration(500);
}
@Override
protectedvoidapplyTransformation(floatinterpolatedTime,Transformationt){
intnewHeight=(int)(ValueUtil.evalute(interpolatedTime,mStartHeight,mEndHeight)+0.5f);
mImageView.getLayoutParams().height=newHeight;
mImageView.requestLayout();
super.applyTransformation(interpolatedTime,t);
}
}
3.使用方法:
//竖直移动动画 ResetAnimationanim=newResetAnimation(mImageView,startHeight,endHeight); anim.setInterpolator(newOvershootInterpolator()); startAnimation(anim);
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发动画技巧汇总》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android文件操作技巧汇总》、《Android资源操作技巧汇总》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。