Как удалить Представление, когда анимация заканчивается?

Я создаю игру, и я хотел бы отобразить простой "счет" - анимация плееру, когда кредиты даны ему. Это - представление, которое я бросаю на экран:

public class Score extends FrameLayout {

  public Score(Context context, int score) {
    super(context);
    TextView txt = new TextView(context);
    txt.setText(String.valueOf(score).toUpperCase());  
    addView(txt);
    Animation anim = AnimationUtils.loadAnimation(context, R.anim.score);
    startAnimation(anim);
    anim.setAnimationListener(animationListener);
  }
  private void Remove(){

    ViewGroup parent = (ViewGroup)getParent();  
    parent.removeView(this);

  } 
  private AnimationListener animationListener = new AnimationListener() {

    @Override
    public void onAnimationEnd(Animation animation) {

      Remove();
    }  
  };
}

Этот код на самом деле работает вполне прилично, пока существует ТОЛЬКО ОДНА анимация счета на экране в любой момент времени. Если очки плеера снова, прежде чем последний счет был удален, сбои приложения - вероятно, потому что второй счет заставляет событие удалять себя во время анимации.. Действительно ли это - плохая практика использования Анимации? Как был бы Вы парни обрабатывать это?

22
задан Svenhelge 11 June 2010 в 18:13
поделиться