私のアプリケーションには、ボタンをクリックすることを提案するために 10 秒間上下に移動するだけの跳ねる矢印がいくつかあります。ページが初めてロードされるとき、それらは正常に機能します。このビューを通り過ぎてからビューに戻ると、矢印はそこにありますが、動きません。ただし、10 秒後には消えます。
ViewDidLoad で実装されている動きを制御するコードを次に示します。
//Makes my images move up and down
CABasicAnimation *hover = [CABasicAnimation animationWithKeyPath:@"position"];
hover.additive = YES;
hover.fromValue = [NSValue valueWithCGPoint:CGPointZero];
hover.toValue = [NSValue valueWithCGPoint:CGPointMake(0.0, -20.0)];
hover.autoreverses = YES;
hover.duration = 0.8;
hover.repeatCount = 30;
[_imageView.layer addAnimation:hover forKey:@"myHoverAnimation"];
[_imageViewTwo.layer addAnimation:hover forKey:@"myHoverAnimation"];
[_imageViewThree.layer addAnimation:hover forKey:@"myHoverAnimation"];
// Delay execution of my block for 10 seconds.
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 10 * NSEC_PER_SEC), dispatch_get_current_queue(), ^{
_imageView.alpha = 0.0;
_imageViewTwo.alpha = 0.0;
_imageViewThree.alpha = 0.0;
_arrowLabel.text = @"";
});
これは、セグエを使用してページに戻ったときにのみ発生します。
私がdismissViewControllerAnimatedを使用すると、この問題は発生しません。
これを発生させる違いは何ですか?