我正在尝试设置计时器以定期运行事件,如here所述。我得到了hashtag参数已被弃用,因此我尝试相应地重写startTimer代码:
func startTimer()
{
let theInterval: NSTimeInterval = 5.0
self.timer = NSTimer.scheduledTimerWithTimeInterval
(
interval: theInterval,
target: self,
selector: Selector("timerTick:"),
userInfo: "Hello!",
repeats: true
)
}
问题是,我一直收到错误:“对成员'scheduleTimerWithTimeInterval(_:invocation:repeats :)'”的模糊引用。但我不是试图运行scheduledTimerWithTimeInterval(_:invocation:repeats :),我正在尝试运行scheduledTimerWithInterval:target:selector:userInfo:重复。我认为从我传递的参数中可以看出这一点。
我需要做些什么不同的事情?
答案 0 :(得分:3)
有两个问题:
scheduledTimerWithTimeInterval
与空心括号之间的换行符和空格混淆了。
您不应提供第一个参数标签。
所以,你可以这样做:
timer = NSTimer.scheduledTimerWithTimeInterval(
2.0,
target: self,
selector: #selector(timerTick(_:)),
userInfo: "Hello!",
repeats: true
)
注意,我还使用Selector("timerTick:")
语法替换了#selector
。