UIView动画块未等待

| 我有以下代码:
[UIView animateWithDuration:0.8
                             animations:^{ 
                                 [self methodToRun];
                             } 
                             completion:^(BOOL finished){
                                 [self anotherMethod];
                             }];
尽管methodToRun中有东西,但应用程序不会等待0.8秒,而是继续运行anotherMethod。有什么办法可以让我等待0.8秒再运行第二个位吗?     
已邀请:
        您可以将呼叫添加到“ 1”,而不是依赖于完成参数。     
        不要滥用这样的动画块。如果您确实希望延迟,请使用Ken链接的方法,甚至更简单的方法是使用GCD(iOS 4+)。 这是一个使用
0.8
延迟的示例,就像您在问题中使用的那样:
dispatch_time_t delay = dispatch_time(DISPATCH_TIME_NOW, NSEC_PER_SEC * 0.8); 
dispatch_after(delay, dispatch_get_main_queue(), ^(void){
    [self anotherMethod];
});
    

要回复问题请先登录注册