1

我的动画有一个淡入淡出,在尝试了一切之后,我似乎无法使用TimerTimerTask正确使用,因为我的应用程序崩溃了。五秒钟后,我希望我的按钮在 5 秒钟后显示或淡入。我如何实现这一目标?

这是我的代码:

   ImageButton hit = (ImageButton) findViewById(R.id.tryButton2);
   final Animation animationFadeIn = AnimationUtils.loadAnimation(this, R.anim.fadein);
   hit.startAnimation(animationFadeIn);

并且处理程序不起作用它只是让它看起来没有褪色

4

1 回答 1

0

我希望这有帮助!

hit.setVisibility(View.GONE); 
animationFadeIn.setStartOffset(5000);
animationFadeIn.setAnimationListener(new AnimationListener() {

     @Override
     public void onAnimationStart(Animation animation) {
        hit.setVisibility(View.VISIBLE);
     }

     @Override
     public void onAnimationRepeat(Animation animation) {
        // Nothing to do here
     }

     @Override
     public void onAnimationEnd(Animation animation) {
        // Nothing to do here
     }
  });
hit.startAnimation(animationFadeIn);

编辑: 这里有一种非常快速和简单的方法来启用/禁用单击按钮:您可以使用布尔变量:

private boolean hasClicked = false

现在将其添加到您的 OnClickListener 中:

if(!hasClicked) {
    hasClicked = true;
    // call your animate method
}

现在您必须再次“启用”该按钮。你必须在你的 AnimationListener @Override public void onAnimationEnd(Animation animation) { hasClicked = false; }

如果对您有帮助,请不要忘记点赞 :)

于 2012-04-27T22:29:10.250 回答