Swift nstimer访问其他类的功能

时间:2016-06-29 22:08:14

标签: swift class nstimer

无法在另一个类中运行该函数作为NStimer的选择器。

class VariClass
{
  func updateUILoop()
    {
         print("updating UI")
    }
}

在app委托中我有

let values = VariClass()

在appdelegate中我有。

let timer = NSTimer(fireDate: NSDate(), interval: 5, target: self, selector: #selector(values.updateUILoop), userInfo: nil, repeats: true)

如果我手动运行,该功能可以正常工作。

getvalues.updateUILoop()

1 个答案:

答案 0 :(得分:3)

您希望NSTimerfunc updateUILoop对象上调用values,因此定时器回调的目标应为values,而不是self

let timer = NSTimer(fireDate: NSDate(), interval: 5, target: self.values, selector: #selector(VariClass.updateUILoop), userInfo: nil, repeats: true)