如何等到代码完成.iOS版

Art*_*hur 4 animation objective-c ios

我可以通过这段代码调用一些选择器

[self performSelector:<#(SEL)#> onThread:<#(NSThread *)#> withObject:<#(id)#> waitUntilDone:<#(BOOL)#>]
Run Code Online (Sandbox Code Playgroud)

并且线程将一直等到这个选择器工作(如果我设置waitUntilDone:YES).我的问题是 - 我可以等到一些代码完成吗?

例如.我有一些子视图,加载动画.动画持续时间为2秒.如果我在背景视图上做一些动作,在动画时,我有一个错误.我想等到动画结束.我不能做一个选择器,并使用

[self performSelector:<#(SEL)#> onThread:<#(NSThread *)#> withObject:<#(id)#> waitUntilDone:<#(BOOL)#>]
Run Code Online (Sandbox Code Playgroud)

有什么建议?)

Ano*_*dya 5

你可以试试这种方式

-(void)waitUntilDone:(void(^)(void))waitBlock {
    //use your statement or call method here
    if(waitBlock){
        waitBlock();
    }
}
Run Code Online (Sandbox Code Playgroud)

而你需要使用它

[self.tableView waitUntilDone:^{
    //call the required method here                                            
}];
Run Code Online (Sandbox Code Playgroud)