如何在Swift Playground中使用更新功能

时间:2016-04-14 12:56:52

标签: swift sprite-kit swift-playground

在Xcode项目中使用SpriteKit,我可以使用更新功能在帧之间更新我需要的所有内容。

e.g。

override func update(currentTime: CFTimeInterval) {
    /* Called before each frame is rendered */
}

如何在Xcode Playground中做同样的事情?

我认为这不是NSTimer.scheduledTimerWithTimeInterval in Swift Playground

的重复

///更新///

我发现我可以添加一个类,因此可以覆盖该类以获得更新功能。

在任何其他代码之前添加此代码,例如

//: Playground - noun: a place where people can play

   import SpriteKit
   import XCPlayground

    class PrototypeScene: SKScene {

    override func update(currentTime: CFTimeInterval) {

        print( "update"  );
        callFunctionOutsideClass();

    } 
    }

func callFunctionOutsideClass(){
}

下一个问题是范围。如何从我已覆盖的更新功能中调用Playground正文中的函数?

如果我尝试向类添加任何属性,我会收到错误 - “错误:类'PrototypeScene'没有初始值设定项”

由于

1 个答案:

答案 0 :(得分:1)

以下是工作代码的示例。您的类需要初始化程序才能设置属性!有些类需要import SpriteKit import XCPlayground class PrototypeScene: SKScene { var blah: String? var foo : Int! var boo = 2 init(blah: String) { super.init() self.blah = blah self.foo = 1 } required init(coder aDecoder: NSCoder) { super.init() } override func update(currentTime: CFTimeInterval) { print( "update") callFunctionOutsideClass() } } func callFunctionOutsideClass(){ } ,如下所示(这是SKScene的情况)

document.getElementById("searchBar").value = '';