1

UIImageView を単純にアニメーション化して、タイマーやディスプレイリンクなしで無限に移動したいと考えています。だから、これが私がやったことです:

        [UIView animateWithDuration:0
                          delay:0
                        options: UIViewAnimationOptionBeginFromCurrentState | UIViewAnimationOptionRepeat
                     animations:^{self.vitesseY = self.vc + self.vitesseY;
                         self.balle.imageView.center = CGPointMake(self.balle.imageView.center.x+self.vitesseX, self.balle.imageView.center.y+self.vitesseY);}
                     completion:^(BOOL finished){NSLog(@"fini");}];

問題は、imageView が最初の位置に戻ることですが、アニメーションを新しい位置から繰り返したいと考えています。ご協力ありがとう御座います!

4

1 に答える 1

0

ここで行っていることを実行する最善の方法は、タイマーを使用することです。

しかし、奇妙な理由で本当にこの方法でやりたい場合は、完了ブロックが呼び出されたときに新しい animate 呼び出しを追加する必要があります (ただし、これは不必要に複雑になり、パフォーマンスが低下する可能性があります)。その理由は、UIView がアニメーション ブロックを 1 回評価し、同じアニメーションを何度も繰り返すためです。

于 2013-03-27T13:07:38.860 に答える