如何在 Objective-C 中调用 -(void)update:(CCTime)delta 方法

How to call the -(void)update:(CCTime)delta method in Objective-C

有没有办法调用objective-c中的-(void)update:(CCTime)delta方法?我知道(使用 sprite 生成器)我可以创建一个场景,然后将其附加到自定义 class,这样当通过 CCBReader 加载场景时,class 的更新方法会自动叫。

我现在通过没有自定义 class 的代码加载场景,但仍然希望 "start" 的更新方法(因为没有更好的词。)有没有办法做到这一点?

例如从 onEnter 方法调用 scheduleUpdate

[self scheduleUpdate];

但是,如果您使用的是 cocos2d-objc 或 cocos2d-spritebuilder 3.0 或更高版本,update: 方法会自动安排。

https://github.com/cocos2d/cocos2d-objc/blob/v3.0/cocos2d/CCNode.m#L1190

-(CCTimer *) schedule:(SEL)selector interval:(CCTime)interval repeat: (NSUInteger) repeat delay:(CCTime) delay
{
    NSAssert(selector != nil, @"Selector must be non-nil");
    NSAssert(selector != @selector(update:) && selector != @selector(fixedUpdate:), @"The update: and fixedUpdate: methods are scheduled automatically.");