我如何在不冻结UI的情况下暂停一个方法,然后在被告知时继续这个过程?
谢谢,
凯文
发布于 2011-01-10 06:30:34
没有一种方法可以中断任意方法的执行,然后在稍后恢复它。
您可以将您的方法分成多个部分,这些部分表示您希望能够在其间暂停的工作单元。然后,您可以使用计时器(对于特定的暂停间隔,可以使用NSTimer或[NSObject performSelector:withObject:afterDelay:]。
更多关于你正在尝试做什么的信息可能会在这里提供一些更具体的有用建议。
发布于 2011-01-10 06:35:17
有一种方法可以防止UI停止,例如。定时器也是。这或多或少就是我们运行循环的全部原因(嗯,这不是真的,但在你的例子中是真的)。
只需将此代码插入到您的函数中,一切都会正常工作:
while(pauseFunction)
{
[[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.1f]];
}备注:运行循环计划的所有内容都会持续运行,这是UI、计时器、网络等pp。
https://stackoverflow.com/questions/4642236
复制相似问题