1

ユーザーが移動すると、ソースと宛先の四角形がアニメーションで点灯するゲームを作成しています。アニメーションの長さは 1 秒です。

問題は、ユーザーが進むボタンをすばやくタップすると、すべてのソースと宛先の四角形が点灯し、最初のアニメーションが終了する前に 2 番目のアニメーションが開始されるため、多くの四角形が点灯することです。

アニメーションの継続時間が終わっていないときにアニメーションを突然終了するにはどうすればよいですか?

アニメーション機能コード:-

[UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:value];
    [UIView setAnimationRepeatCount:1];
   // [UIView setAnimationRepeatAutoreverses:YES];

    [self.view viewWithTag:(src+1)+2000].backgroundColor=[UIColor orangeColor];
    [self.view viewWithTag:(src+1)+2000].backgroundColor=[UIColor clearColor];
    [self.view viewWithTag:(dest+1)+2000].backgroundColor=[UIColor orangeColor]; 
    [self.view viewWithTag:(dest+1)+2000].backgroundColor=[UIColor clearColor];
    [UIView commitAnimations];

注:-私は反対票を批判の健全な方法として受け入れますが、改善できるように理由を書きます

4

1 に答える 1

1

使用する

#import <QuartzCore/QuartzCore.h>

.......

[myView.layer removeAllAnimations];

それが役に立てば幸い。幸せなコーディング:)

于 2012-09-10T12:23:09.213 に答える