本文实例讲述了Android开发重写Animation实现下拉图片后弹射回去效果。分享给大家供大家参考,具体如下:
1. 解析:
1)interpolatedTime指的是平移的变化率(从0到1)
2)mStartHeight 控件开始的高度
3)endHeight 控件竖直移动后的高度
4)mImageView.requestLayout(); 图片在改变高度后填充布局并固定
5)ValueUtil.evalute(interpolatedTime, mStartHeight, mEndHeight) + 0.5f) 得到变化后的高度
2. 代码:
public class ResetAnimation extends Animation {
private ImageView mImageView;
private int mStartHeight;
private int mEndHeight;
public ResetAnimation(ImageView imageView, int startHeight, int endHeight) {
this.mImageView = imageView;
this.mStartHeight = startHeight;
this.mEndHeight = endHeight;
setDuration(500);
}
@Override
protected void applyTransformation(float interpolatedTime, Transformation t) {
int newHeight = (int) (ValueUtil.evalute(interpolatedTime, mStartHeight, mEndHeight) + 0.5f);
mImageView.getLayoutParams().height = newHeight;
mImageView.requestLayout();
super.applyTransformation(interpolatedTime, t);
}
}
3. 使用方法:
//竖直移动动画
ResetAnimation anim = new ResetAnimation(mImageView, startHeight, endHeight);
anim.setInterpolator(new OvershootInterpolator());
startAnimation(anim);
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发动画技巧汇总》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android文件操作技巧汇总》、《Android资源操作技巧汇总》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
您可能感兴趣的文章:Android ListView实现下拉顶部图片变大效果Android仿QQ好友详情页下拉顶部图片缩放效果Android DragImageView实现下拉拖动图片放大效果android ScrollView实现下拉放大头部图片Android自定义scrollView实现顶部图片下拉放大Android实现下拉放大图片松手自动反弹效果