1

1 つの uiviewimage のアニメーションが完了した後で、メイン アニメーションをアニメーション化するイベントを発生させます。ViewDidLoad() にはメインのアニメーション ロジックがあります。読み込まれると、画面にアニメーション サークルが表示されます。

画面にはボタンがあり、別のアニメーションをわずか 6 秒間起動します。

前のアニメーションを実行できるようにするロジックとメソッドが必要です。

私の意見では、コールバックまたはスレッドで実行できますか?

答えとしてあなたの提案をしてください。コールバック方法を提案すれば、コードは完璧になります。

4

3 に答える 3

2

これは、MonoTouchに変換されたOmarJohariの例です。

UIView.Animate(0.6, 0d, UIViewAnimationOptions.CurveEaseOut, 
               () => {
                      // Animations here
               }, 
               () => {
                      // After animation completes
               });
于 2012-11-14T07:20:10.030 に答える
1
[UIView animateWithDuration:0.6f
                      delay:0.0f
                    options:UIViewAnimationOptionCurveEaseOut
                 animations:^{
                     // Do your animations here.
                 }
                 completion:^(BOOL finished){
                     if (finished) {
                         // Do your method here after your animation.
                     }
                 }];

ブロックを使用すると、アニメーションが終了した後に好きなように呼び出すことができます。

于 2012-11-13T08:20:48.560 に答える
1

このようなことをしてみてください。

メイン画面アニメーションの関数を作成する

       -(void)mainScreenAnimation
       {
          // do ur code here
       }

ボタンでアニメーションを起動するときに、ボタンイベントに次のようなものを追加します

   -(IBAction)btnPressed:(id)sender
   {
        // try implementing a timer which starts after 6seconds and the selector of the timer should be @selector(mainAnimationScreen)

         timer=  [NSTimer scheduledTimerWithTimeInterval:6.0 target:self selector:@selector(mainAnimationScreen) userInfo:nil repeats:NO];

     // if u want to repeat the animation then use this

       timer=  [NSTimer scheduledTimerWithTimeInterval:6.0 target:self selector:@selector(mainAnimationScreen) userInfo:nil repeats:YES];

   }
于 2012-11-13T08:29:40.247 に答える