Android 无限循环问题

Android 无限循环问题,android,animation,loops,Android,Animation,Loops,我试图让我的动画旋转,直到用户点击视图。我已经将动画设置为旋转一次,我希望它继续进行某种循环,而不是使用.clearAnimation,这样当单击时,动画不会在一个循环的中途停止。我提出的代码显然不起作用,但我能想到怎么做 while(keepSpinning){ turntable = (ImageView)findViewById(R.id.deck1); RotateAnimation r ; // = new RotateAnimation(ROTATE_F

我试图让我的动画旋转,直到用户点击视图。我已经将动画设置为旋转一次,我希望它继续进行某种循环,而不是使用.clearAnimation,这样当单击时,动画不会在一个循环的中途停止。我提出的代码显然不起作用,但我能想到怎么做

while(keepSpinning){

    turntable = (ImageView)findViewById(R.id.deck1);     

    RotateAnimation r ; // = new RotateAnimation(ROTATE_FROM, ROTATE_TO);
    r = new RotateAnimation(ROTATE_FROM, ROTATE_TO, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
    r.setDuration(5000);
    r.setRepeatCount(0); 

    turntable.startAnimation(r);
    turntable.setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(View arg0, MotionEvent arg1) {
            keepSpinning = false;
            return true;
        }
    });
}

而不是
while(keepSpinning)
循环,使用
旋转图像
RotateAnimation
将在侦听器上为动画的每个循环调用,您可以在那里取消动画。

您不能在
onTouch()
中取消动画吗<代码>转盘。getAnimation().cancel()