8

我有以下动画块:

[UIView animateWithDuration:2 
                 animations:^{ 
                     [childViewController_.view setAlpha:0];  
                 } 
                 completion:^(BOOL finished) {
                     [childViewController_.view removeFromSuperview];
                 }];

如上所述执行时,立即调用完成块。但是,如果我没有完成块,则动画将按预期执行。

我在这里做错了什么?

更新
完成块中 的finished标志是NO.

4

1 回答 1

1

你只是忘了检查一个条件

[UIView animateWithDuration:2 
                 animations:^{ 
                     [childViewController_.view setAlpha:0];  
                 } 
                 completion:^(BOOL finished) {
                     if (finished)
                     {
                          [childViewController_.view removeFromSuperview];
                     }
                 }];
于 2013-03-14T08:09:12.020 回答