Android-ротация анимации завершена - PullRequest
0 голосов
/ 12 ноября 2011

Я пытаюсь использовать RotationAnimation для перемещения ImageButton.Я расширил ImageButton, чтобы переопределить onAnimationEnd, чтобы избежать мерцания экрана в конце анимации, и хотел бы обновить положение фактической кнопки [поскольку анимация является лишь поверхностным движением].Как определить точные координаты кнопки в конце анимации?Прикреплен часть моего кода .. Спасибо за помощь!Пожалуйста, дайте мне знать, если вам нужно больше деталей.

public class HomeNavigationButton extends ImageButton {
public HomeNavigationButton(Context context, AttributeSet attrs,
        int defStyle) {
    super(context, attrs, defStyle);
}
public HomeNavigationButton(Context context, AttributeSet attrs) {
    super(context, attrs);
}
public HomeNavigationButton(Context context) {
    super(context);
}


@Override
protected void onAnimationEnd() {
    super.onAnimationEnd();
    int l = ?
    int t = ?
    int r = ?
    int b = ?
    this.layout(l,t,r,b);
}

1 Ответ

0 голосов
/ 13 ноября 2011

Положение кнопки анимации? Я бы вышел на конечности и думаю, что вы не можете. Анимации интересные. Они не "настоящие". Думайте о них как о мираже. Попробуй это. Поворот изображения очень медленно. Если изображение представляет собой прямоугольник, когда оно составляет около 45 градусов, щелкните там, где раньше было изображение, но оно не длинное. Вы фактически зарегистрируете щелчок, потому что изображение на самом деле не вращается в реальных координатах.

Я бы подумал, что нужно на самом деле анимировать кнопку, как игровой спрайт, или сделать несколько проб и ошибок с анимацией и установить значения вручную. Если вы делаете второй, убедитесь, что вы динамически конвертируете в DIP-координаты, а не необработанные целые.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...