0

我对android中的动画按钮有一些问题。这是我的代码:

     private void RunAnimations() {
            Animation a = AnimationUtils.loadAnimation(this, R.anim.alpha);
            a.reset();
            Button tv = (Button) findViewById(R.id.button1);
            tv.clearAnimation();
            tv.startAnimation(a);}

            @Override
        public boolean onTouchEvent(MotionEvent event){
            if(event.getAction()== MotionEvent.ACTION_DOWN){
                RunAnimations();
            }
            return false;
            }

问题是如果屏幕 OnTouch 动画将运行。我希望动画只运行一次。我应该添加什么?

4

1 回答 1

0

你可以添加一个boolean到你的班级animationRun = false,然后

 public boolean onTouchEvent(MotionEvent event){
        if(!animationRun && event.getAction()== MotionEvent.ACTION_DOWN){
            RunAnimations();
            animationRun = true;
        }
        return false;
        }

我宁愿在播放动画后删除事件处理程序,但我并不真正了解 Android API,因此无法帮助您。

于 2012-05-05T07:30:36.607 回答