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程序设计有所帮助。