在objective-c中,我该如何做出类似于“我希望你在2.5秒内运行X功能”的东西。预定功能
我使用了一个名为Cocos2d的游戏开发目标-c框架,它有一个函数可以让我安排(和不安排)功能,但是我没有使用Cocos2d来完成这个项目。
在objective-c中,我该如何做出类似于“我希望你在2.5秒内运行X功能”的东西。预定功能
我使用了一个名为Cocos2d的游戏开发目标-c框架,它有一个函数可以让我安排(和不安排)功能,但是我没有使用Cocos2d来完成这个项目。
只要你的应用基于NSRunLoop(几乎所有的都是),你可以使用NSObject的performSelector:withObject:afterDelay:
或NSTimer。
有许多方法可以做到这一点,可能是最简单的使用performSelector:
,如:
[obj performSelector:@selector(scheduledMethod)
withObject: paramOrNil
afterDelay:2.5];
注意,不同的是cocos2d的调度,在NSObject
变体不通过你的方法,经过实际量所以你不能依赖它来要求高精度或准确度的任何事情(除非你添加自己的代码来计算调度和调用之间的实际流逝时间)。
reference documentation提供了一些额外的讨论。
请注意,NSTimer也可以使用,并有一定的优势。 –