private void setAnimation() {
// TODO Auto-generated method stub
Animation animation = new ScaleAnimation(0, 100, 0, 100);//移动
animation.setFillAfter(true);//不设为true,当动画结束后,View会回到(0,0)
findViewById(R.id.testImage).startAnimation(animation);}
该段代码将控件从(0,0)移动到(100,100).当实际的View仍在(0,0).
----------------------------------------------------------------------正确使用方式----------------------------------------------------------------------
public void doBigSmall(View v) {
ValueAnimator animationBig = ValueAnimator.ofFloat(1.f, 3.f);
animationBig.setDuration(1000);
animationBig.addUpdateListener(new AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator animation) {
float currentValue = (Float) animation.getAnimatedValue();
testImage.setScaleX(currentValue);
testImage.setScaleY(currentValue);
}
});
animationBig.start();
}
该段代码的意图为使View放大3倍(1.f->3.f).动画结束后,view的size属性也变为原本的3倍.