【发布时间】:2016-04-24 11:21:09
【问题描述】:
我在 Spritebuilder 的时间线上有一个回调设置。 我触发了时间线动画。我的目标是在动画完成之前禁用触摸。
func triggerTimelineAction(nodeName: CCNode){
self.userInteractionEnabled = false;
nodeName.animationManager.runAnimationsForSequenceNamed("nodeMainAction")
nodeName.animationManager.setCompletedAnimationCallbackBlock(b: ??? )){
self.userInteractionEnabled = true;
}
}
问题:如何声明回调关键帧并连接/接收它。
UPD:我被告知要在 setCompletedAnim 中传递一个函数......所以我让我的代码看起来像: 函数动画完成(){ self.userInteractionEnabled = true; }
func triggerTimelineAction(nodeName: CCNode){
self.userInteractionEnabled = false;
nodeName.animationManager.runAnimationsForSequenceNamed("nodeMainAction")
nodeName.animationManager.setCompletedAnimationCallbackBlock(b: @selector(animationCompleted))
}
我收到错误“无法将 ()->() 类型的值转换为预期的参数类型 (AnyObject)->Void
显然这与 Cocos2d 语法有关。会朝那个方向进一步挖掘
【问题讨论】:
标签: swift cocos2d-iphone callback spritebuilder