Android - Как взаимодействовать с представлением после его анимации?
У меня есть представление, которое анимируется с помощью TranslateAnimation:
TranslateAnimation translateAnim = new TranslateAnimation(fromX, toX, fromY, toY);
translateAnim.setDuration(SLIDING_SPEED);
translateAnim.setInterpolator(new BounceInterpolator());
translateAnim.setFillAfter(true);
mSlidingView.startAnimation(translateAnim);
Анимация работает нормально, но после ее завершения я больше не могу нажимать на изображение. Вместо этого я все еще могу нажать на его прежнее местоположение.
Я искал похожие вопросы ( здесь, здесь и здесь) в Stackru, но ни один из них не дает никакого решения. Я слышал, что ObjectAnimator исправил это, но могу ли я что-то сделать с помощью предыдущего API? (Я не хочу полагаться на еще одну стороннюю библиотеку, такую как NineOldAndroids, для поддержки нового API-интерфейса анимации на устройствах перед сотовой разверткой). О, и я пытался сделать вид недействительным, но это ничего не меняет.
Любая идея?
Спасибо!
2 ответа
Ну, я думаю, что нет ссылки, но вы пробовали: (до setFillAfter)
translateAnim.setFillEnabled(true);
В API 11+ мы можем сделать это с помощью класса ObjectAnimator.
В API 10-, когда мы переводим представление, визуальное представление будет переведено, но физическое местоположение все еще в старом местоположении, изменение поля переведенного представления после завершения анимации может решить проблему.