NSTimer在我的Swift代码中不会被反复触发

时间:2015-07-24 23:57:31

标签: swift nstimer

我在我的viewDidAppear:方法中安排了一个计时器,但它只触发一次而且再也没有触发,代码如下所示

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)

    timer = NSTimer(timeInterval: 1, target: self, selector: "test", userInfo: nil, repeats: true)
    timer.fire()
   }

func test() {
    print("timer test")
}

1 个答案:

答案 0 :(得分:1)

实际上,你没有安排它。试试这个:

timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: Selector("test"), userInfo: nil, repeats: true)

摆脱timer.fire()。

请注意,如果您在viewDidAppear中创建计时器,则每次出现视图时都会创建一个新的计时器。