帧动画不会在第二次单击时运行

时间:2013-05-21 05:43:21

标签: android handler

第一次使用效果很好, 但是在第二次敲击时它没有响应。它等待1秒然后执行'generateRandom()'方法

有人可以帮忙吗?

我的代码:

    paper.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            player.setImageResource(R.drawable.papel1);
            setTimerImage4Bot();
        }
    });


    public void setTimerImage4Bot() {
      try {
          handler = new Handler();
          frameAnimation = (AnimationDrawable)bot.getDrawable();
          frameAnimation.setCallback(bot);
          frameAnimation.setVisible(true, true);

          frameAnimation.start();
          Log.i("BaoAnh", "START");

          handler.postDelayed(new Runnable(){
              public void run(){
                  frameAnimation.stop(); 
                  Log.i("BaoAnh","STOP");
                  generateRandom();
              }
          },1000);

      }catch (Exception e) {

      }
}

1 个答案:

答案 0 :(得分:0)

创建自定义类AnimationTask并实现TimerTask接口

private class AnimationTask implements TimerTask{
  @Override
  public void run(){
    // Run you code here
  }
}

在onClick方法中:

Timer timer = new Timer(); 
timer.schedule(new AnimationTask(), 1000);

希望我能帮到你:D