私のアプリでは、このコードがviewWillAppearにあります。画面の上部から下部にランダムなオブジェクトをアニメーション化するだけです。問題は、衝突を検出する必要があることです。これまでに学んだことは、アニメーションの座標をいつでも取得することは不可能であるということです。では、NSTimerを使用してどのように実装できますか?またはNSTimerを使用しますか?私はそれを理解できませんでした。手がかりがあれば幸いです。
-(void)viewWillAppear:(BOOL)animated
{
for (int i = 0; i < 100; i++) {
p = arc4random_uniform(320)%4+1;
CGRect startFrame = CGRectMake(p*50, -50, 50, 50);
CGRect endFrame = CGRectMake(p*50, CGRectGetHeight(self.view.bounds) + 50,
50,
50);
animatedView = [[UIView alloc] initWithFrame:startFrame];
animatedView.backgroundColor = [UIColor redColor];
[self.view addSubview:animatedView];
[UIView animateWithDuration:2.f
delay:i * 0.5f
options:UIViewAnimationCurveLinear
animations:^{
animatedView.frame = endFrame;
} completion:^(BOOL finished) {
[animatedView removeFromSuperview];
}];
}