Swift NSTimer传递变量语法

时间:2016-05-31 09:08:14

标签: swift nstimer

我想调用一个函数myTestFunction(day),day是一个int,来自NSTimer。

NSTimer.scheduledTimerWithTimeInterval(0.1, target: self, selector: #selector(ViewController.myTestFunction(_:)), userInfo: day, repeats: true)

Xcode编译器提示我使用上面的语法,但是当我在func中放置测试时,它似乎没有被调用。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

selector参数中指定的方法只接受一个必须为NSTimer类型的参数。文档说:计时器将自己作为参数传递

func myTestFunction(timer : NSTimer) {

除了没有参数之外的任何其他内容都不起作用。

但您可以通过userInfo获取传递的整数,例如

let day = timer.userInfo as! Int