0

私は2つのアニメーションを持っています。アプリが読み込まれたときの最初の1つと、ユーザーエクスペリエンスの残りの部分を通過したままになる2番目の1つです。

これが私が一言で言いたいことです

1)アプリの読み込み時に読み込まれるアニメーション「A」。2)次に、アニメーション「A」を非表示にして、同じ座標でアニメーション「B」に置き換えます。3)アニメーション「B」を他の時間、または30秒または45の間隔で再生します。

アニメーションA

[UIView animateWithDuration:2.5 
                      delay:2.0 
                    options:UIViewAnimationCurveEaseIn
                 animations:^{[buhoButton setFrame:CGRectMake(91, 185, 130, 130)];}completion:nil];

アニメーションB

animation.animationImages = [NSArray arrayWithObjects:[UIImage imageNamed:@"Buho128x128_0.png"],
                                  [UIImage imageNamed:@"Buho128x128_1.png"],
                                  [UIImage imageNamed:@"Buho128x128_2.png"],
                                  [UIImage imageNamed:@"Buho128x128_3.png"],
                                  [UIImage imageNamed:@"Buho128x128_4.png"],
                                  [UIImage imageNamed:@"Buho128x128_3.png"],
                                  [UIImage imageNamed:@"Buho128x128_2.png"],
                                  [UIImage imageNamed:@"Buho128x128_1.png"],
                                  [UIImage imageNamed:@"Buho128x128_0.png"], nil];
[animation setAnimationRepeatCount:-1];
animation.animationDuration = 1;
[animation startAnimating];

これは可能ですか?

4

2 に答える 2

1

アニメーションBのコードをアニメーションAの完了ブロックに入れてみてください。

[UIView animateWithDuration:2.5 
                  delay:2.0 
                options:UIViewAnimationCurveEaseIn
             animations:^{[buhoButton setFrame:CGRectMake(91, 185, 130, 130)];}
             completion:^(BOOL finished){/*Animation B code here*/;}
];
于 2012-09-18T15:56:16.390 に答える
1

アニメーションBがトリガーされるタイミングを制御する場合は、アニメーションA(viewDidLoadに配置)の場合はremoveedOnCompletion = YES、アニメーションB(tiggeringイベントが処理される場所に配置)の場合はremoveedOnCompletion=NOのCABAsicAnimationを使用できます。

于 2012-09-18T17:36:13.223 に答える