2012-05-29 3 views
0

У меня есть onTouchListener на моем gridView, и если ACTION_DOWN нажата, начинается анимация (масштаб). Как сделать следующие вещи:Отмените анимацию, если ACTION_UP

  1. Как держать масштабируется изображение, если это ACTION_DOWN нажимается
  2. Если это начинается ACTION_DOWN анимации, но затем, если ACTION_UP (если анимация не полный) анимация мгновенно разошлась (вернуться к времени, прежде чем начало анимации)

ответ

1

для того, чтобы получить конечное состояние анимации, чтобы придерживаться после его завершения, вам нужно позвонить Animation.setFillAfter(true)

вы можете сбросить анимации для любой ти me с Animation.cancel() и Animation.reset(), чтобы преобразовать представление в исходное состояние.

НТН

+0

У меня есть проблема, потому что обработка ACTION_UP является неоспоримым сделан после обработки ACTION_DOWN (его очевидная). Запуск анимации происходит в ACTION_DOWN, поэтому процесс анимации не может быть прерван (ACTION_UP), потому что анимация удерживает обработчик событий (я так думаю) – robocoder

+0

Я бы предложил разместить соответствующий код, похоже, что вы, вероятно, объявляете переменные внутри неправильной области, если вы не может получить доступ к анимации в обоих случаях. – Devunwired

+0

Да, у меня была проблема с областями, реально подлая. Все работает отлично, однако для анимации прерываний я также использовал view.clearAnimation(). Благодаря! – robocoder