非常初学者的 obj-c 问题。
我的任务是在视图加载时执行简单的序列:
- 暂停 2 秒
- 方法1执行
- 暂停 2 秒
- 方法2执行
- 暂停 2 秒
- 方法3执行
我为 iOS5+ 编写此代码,因此可以使用块或其他功能。我试过
[NSThread sleepForTimeInterval:x];
在方法执行之间进行暂停,但是三个暂停加到一个,我有一个很大的暂停,所以这是错误的部分。如何以正确的方式做到这一点?
非常初学者的 obj-c 问题。
我的任务是在视图加载时执行简单的序列:
我为 iOS5+ 编写此代码,因此可以使用块或其他功能。我试过
[NSThread sleepForTimeInterval:x];
在方法执行之间进行暂停,但是三个暂停加到一个,我有一个很大的暂停,所以这是错误的部分。如何以正确的方式做到这一点?
休眠 NSThread 绝不是处理定时方法执行的正确方法。您想要NSTimer,您可以将其设置为在两秒后触发相同的方法(然后让该方法确定接下来要执行哪个选择器),或者将三个计时器设置为在彼此之后触发两秒,每个计时器调用不同的方法。
你可以使用 performSelector:withObject:afterDelay:,或者像 CodaFi 所说的,一个 NSTimer。任何一种方法都允许将对象传递给方法,如果您需要传递多个参数,该对象可以是数组或字典。
我会链接这些方法: