在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'没有初始值设定项”
由于
答案 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 = '';