我编写此代码以在View Controller中使用Timer:
var timer:NSTimer!
override func viewDidLoad() {
super.viewDidLoad()
timer = NSTimer(timeInterval: 2, target: self, selector: "goTakingPhoto", userInfo: nil, repeats: false)
timer.fire()
// Do any additional setup after loading the view.
}
func goTakingPhoto(){
// doSomething
}
但是函数goTakingPhoto
会立即调用,而不会在2秒后调用。
谁能帮我?非常感谢。
答案 0 :(得分:3)
试试这个:
override func viewDidLoad() {
super.viewDidLoad()
var timer = NSTimer.scheduledTimerWithTimeInterval(2, target: self, selector: Selector("goTakingPhoto"), userInfo: nil, repeats: false)}
}
func goTakingPhoto() {
// doSomething
}
答案 1 :(得分:0)
我发现它适用于NSTimer.scheduledWithTimeInterval(...)
。并且您不必添加timer.fire()
否则将立即调用func
参考here