【问题标题】:Swift NSTimer didn't work斯威夫特 NSTimer 没有工作
【发布时间】:2015-08-21 12:34:52
【问题描述】:

我做了一个“命令行工具”,我需要使用 NSTimer。 我启动了计时器,但它不起作用...

import Foundation

class ct : NSObject {
    func start() {
        var timer = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: Selector("update"), userInfo: nil, repeats: true)
    }

    func update() {
        println("test timer");
    }
}
var a = ct();
a.start()

while(true) { sleep(10000000) }

【问题讨论】:

  • 尝试让计时器成为类的成员。
  • 你能举个例子吗?
  • var timer : NSTimer?上面的启动函数然后在启动函数中这样做 time = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: Selector("update"), userInfo: nil, repeats: true),如果不工作尝试将其添加到当前运行循环

标签: swift nstimer


【解决方案1】:

NSTimer 需要一个运行循环才能正常工作,CLI 默认没有/不需要一个。

打电话

CFRunLoopRun()

开始运行循环和

CFRunLoopStop(CFRunLoopGetCurrent())

停止它并且不要忘记返回适当的返回值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-16
    • 2016-12-27
    • 1970-01-01
    • 1970-01-01
    • 2017-07-22
    • 2017-03-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多