我正在寻找一种简单直接的方法来延迟iOS应用程序中许多帧的执行,这可能吗?
发布于 2013-06-07 03:13:45
您可以使用[NSTimer scheduledTimerWithTimeInterval: target: selector:]方法,也可以使用内置方法作为wait(time_in_seconds);。
希望这能对你有所帮助。
发布于 2013-06-07 02:47:33
根据您正在做的事情的复杂程度,这一小段代码就足够了:
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
});否则,您可以查看NSTimer来调度要执行的代码。你甚至可以重复一次或多次。
可以像这样使用,例如:
[NSTimer scheduledTimerWithTimeInterval:5.0
target:self
selector:@selector(myMethod)
userInfo:nil
repeats:NO];有关如何使用它的更多信息,请查看this post,当然,请查看documentation。
发布于 2013-06-07 02:43:58
如果您指的是一些恒定的时间,那么通常的方法是使用NSTimer在将来的某个时候触发,或者使用dispatch_after(),它可以在将来的某个时候将一个块分派到主队列或后台队列。
https://stackoverflow.com/questions/16969604
复制相似问题