Как программно анимировать ImageView
Я пытаюсь анимировать ImageView при нажатии на указанный вид изображения.
В частности, я хочу, чтобы размер ImageView становился больше (скажем, на 20 больше), а размер немедленно уменьшался до его первоначального размера).
До сих пор я экспериментировал с этим кодом без удачи.
// thumbLike is the imageView I would like to animate.
button.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
ScaleAnimation scaleAnim = new ScaleAnimation(1.0f, 2.5f, 1.0f, 2.5f,
Animation.RELATIVE_TO_SELF, 0.5f,
Animation.RELATIVE_TO_SELF, 0.5f);
scaleAnim.setInterpolator(new LinearInterpolator());
scaleAnim.setDuration(1500);
thumbLike.startAnimation(scaleAnim);
thumbLike.setAnimation(null);
}
});
Может кто-нибудь предложить мне возможное решение?
Редактировать # 1
Он работает через XML, как ответил Hardik4560:
// finally i use this code to execute the animation
Animation animationScaleUp = AnimationUtils.loadAnimation(this, R.anim.scale_up);
Animation animationScaleDown = AnimationUtils.loadAnimation(this, R.anim.scale_down);
AnimationSet growShrink = new AnimationSet(true);
growShrink.addAnimation(animationScaleUp);
growShrink.addAnimation(animationScaleDown);
thumbLike.startAnimation(growShrink);
и XML
SCALE_UP
SCALE_DOWN
PS: это неловко, так как я уже принял ответ. Я пытаюсь совместить @tharkbad и @ Hardik4560 'Ответы пока еще, но анимация не выглядит гладкой.
во время анимации scale_up это выглядит какпропускать" до конца анимации, а затем сразу же запустить анимацию scale_down. Думаю, мне нужно немного поиграть с этим.