运行SKAction后调用函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了运行SKAction后调用函数相关的知识,希望对你有一定的参考价值。

在我的SpriteKit游戏中,我想在运行SKAction之后调用一个函数。

我假设可以这样做:

let node = SKSpriteNode()
...
node.run(<action: SKAction>, completion: <() -> Void>)

但我无法弄清楚要用什么把<() -> Void>称为函数。

func actionDone() {
...
}
答案

它非常简单,只是放入没有括号的函数名称:

node.run(someAction, completion: actionDone)

并称之为

completion()

run方法的体内。


或者带参数

func run(action : SKAction, completion:(String)->()) {
    // do the action
    completion("Done")
}

func actionDone(param: String) {
   print(param)
}

以上是关于运行SKAction后调用函数的主要内容,如果未能解决你的问题,请参考以下文章

SKAction 仅在睡眠后或运行调试器时运行

片段事务分离和附加后ListView不工作?

SKAction 中的代码运行操作未执行

如何防止在暂停场景上运行 SKAction(取消暂停后),节点纹理在暂停/取消暂停场景后不改变

一次运行两个 SKAction

SKAction playSoundFileNamed 错误