Android: как сделать так, чтобы положение View соответствовало визуальному представлению после анимации - PullRequest
2 голосов
/ 11 апреля 2011

В настоящее время я пытаюсь анимировать карточную игру, используя набор анимаций анимации «Перевести» и «Повернуть». Хотя я использую setFillAfter (true) и вижу, что карта заметно перемещается и остается в своем новом положении, фактическое положение ImageView все еще остается на прежнем месте.

В документации Google написано:

Примечание. Независимо от того, как ваша анимация может перемещаться или изменяться, границы представления, в котором хранится ваша анимация, не будут автоматически корректироваться для ее размещения. Даже в этом случае анимация будет по-прежнему отображаться за пределами своего просмотра и не будет обрезана. Однако отсечение будет происходить, если анимация выходит за пределы родительского представления.

Это означает, что все мои старые onClickListeners и т. Д. По-прежнему связаны со старой позицией, а не с недавно обновленным визуальным представлением, и любая новая анимация, примененная к представлению, происходит с начальной точки, а не с недавно расположенной.

Каков наилучший способ получить эффект, который я ищу (карта, скользящая из моей руки в центр экрана, которая отличается от LinearLayout, а затем в более поздней последовательности, скользящая из этого места за пределы экрана)?

Я знаю, что то, что я ищу, возможно, так как люди на bytesequencing.com достигли этого плавного эффекта анимации в своей игре для Android "Hearts! (Free)", которую я обнаружил на рынке.

Спасибо!

...