类型' GameScene没有会员延迟'

时间:2016-09-13 23:03:50

标签: ios swift sprite-kit nstimer swift3

我宣布延迟并且它给了我一个错误,我试图减慢计时器。

//Updates Timer
    func updateTimer() {
        var delay: Int
        seconds  += 1
        self.timerLabel.text = String(self.seconds * 0.01)
        timer = NSTimer.scheduledTimerWithTimeInterval(-2.0, target: self, selector: #selector(GameScene.delay), userInfo: nil, repeats: false)

2 个答案:

答案 0 :(得分:0)

NSTimer的选择器部分用于运行一个函数,因此你声明了函数,然后计时器应该放在函数之外而不是函数内部

func updateTimer() {
    var delay: Int
    seconds  += 1
    self.timerLabel.text = String(self.seconds * 0.01)}
let timer = NSTimer.scheduledTimerWithTimeInterval(2.0, target: self, selector: #selector(self.updateTimer), userInfo: nil, repeats: false)
当你说你试图减慢计时器时,你也可以更具体一点

答案 1 :(得分:0)

该消息告诉您GameScene.delay没有选择器。您需要一个与此名称匹配的func。请注意,因为您使用了#34; GameScene"而不是" gameScene",它可能是一个类,在这种情况下你需要一个"类功能"叫做延迟。但是,你更有可能想要" self.delay"被称为。即。

之一
    func delay(timer: NSTimer) { ... }
    class func delay(timer: NSTimer) { ... }

另外,你想用" -2.0"来实现什么?您不能在过去运行计时器 - 如果< = 0则默认为0.1。