用动画集合AnimationSet实现一个平移且缩放的动画,代码如下
mIv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
TranslateAnimation translateAnimation = new TranslateAnimation(0,150, 0, 0 );
ScaleAnimation scaleAnimation = new ScaleAnimation(1f, 0.5f, 1f, 0.5f);
translateAnimation.setDuration(1000);
scaleAnimation.setDuration(1000);
AnimationSet animationSet = new AnimationSet(false);
animationSet.addAnimation(translateAnimation);
animationSet.addAnimation(scaleAnimation);
mIv.startAnimation(animationSet);
}
});
运行后平移的位置没有到达想要的位置
原来动画集合中平移和缩放会冲突,是因为动画集合中运用了矩阵的知识,想实现平移缩放,那么在创建矩阵时,必须先缩放后平移,即动画集合中要先添加缩放后添加平移。