延迟执行iOS应用程序

Bal*_*zar 4 objective-c delay execution ios

我正在寻找一种方法,这是一种简单直接的方法来延迟iOS应用程序中的多个帧的执行,这有可能吗?

Dan*_*iel 10

根据你正在做的事情的复杂性,这个小片段就足够了:

double delayInSeconds = 2.0;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC));
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
    //code to be executed on the main queue after delay
});
Run Code Online (Sandbox Code Playgroud)

否则,您可以调查NSTimer一些代码来执行.你甚至可以重复一次或多次.

可以这样使用例如:

[NSTimer scheduledTimerWithTimeInterval:5.0 
                                 target:self 
                               selector:@selector(myMethod) 
                               userInfo:nil 
                                repeats:NO];
Run Code Online (Sandbox Code Playgroud)

有关如何使用它的更多信息的答案很好,请查看这篇文章,当然,请查看文档.