用動(dòng)畫集合AnimationSet實(shí)現(xiàn)一個(gè)平移且縮放的動(dòng)畫,代碼如下
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);
}
});
運(yùn)行后平移的位置沒有到達(dá)想要的位置
原來動(dòng)畫集合中平移和縮放會(huì)沖突,是因?yàn)閯?dòng)畫集合中運(yùn)用了矩陣的知識(shí),想實(shí)現(xiàn)平移縮放,那么在創(chuàng)建矩陣時(shí),必須先縮放后平移,即動(dòng)畫集合中要先添加縮放后添加平移。