Справка по анимации ImageView

Я пытаюсь понять, как анимировать вход и выход из Imageviews.

В основном у меня есть LinearLayout с ImageView и Button внизу. Каждый раз, когда нажимается кнопка, вызывается onClick(), и я делаю

image.setImageResource(imageArray[imageCounter]);

Я просто меняю изображение, отображаемое на ImageView, выбирая разные фотографии в @drawable. Теперь я хочу поместить анимацию при изменении этих изображений (при нажатии кнопки). я использовал

inAnimation = AnimationUtils.makeInAnimation(this,true);

и в onClick() я делаю

image.setImageResource(imageArray[imageCounter]); 
  image.startAnimation(inAnimation);

Это тоже отлично работает. Новое изображение появляется на экране анимированным. Но как поместить анимацию out? Похоже, с помощью startAnimation() можно назначить только одну анимацию.

Как лучше всего анимировать изображение OUT, а затем анимировать другое изображение IN? Поскольку я хочу изменить анимацию в зависимости от нажатой кнопки, я не могу использовать ViewFlipper. Например, если я нажму кнопку button_Anim1, текущее изображение выдвинется справа, а новое изображение появится постепенно. Но если я нажму кнопку_Anim2, текущее изображение выдвинется сверху, а новое изображение появится слева. И так далее.

Я вижу, что я не могу использовать два разных image.startAnimation() в методе onClick(), чтобы сделать текущее изображение View.INVISIBLE, а затем создать новое изображение View.VISIBLE.

Любое предложение приветствуется. Спасибо.


person madu    schedule 30.09.2010    source источник


Ответы (1)


Используйте ImageSwitcher вместо ImageView и посмотрите пример ImageSwitcher в ApiDemos (используя галерею)

person Sameer Segal    schedule 30.09.2010
comment
Большое спасибо, Самир. ImageSwitcher может делать именно то, что я хочу. Ваше здоровье. - person madu; 30.09.2010