在 Swift 2、Xcode 7.0.1 中使用 'self'

Using 'self' in Swift 2, Xcode 7.0.1

我正在 class 大括号下方(在 viewDidLoad 之前)制作一个计时器,用作整个 class 的变量。但是,当我尝试将计时器的目标设置为 'self' 时,出现错误:

Argument type 'NSObject -> () -> ViewController' does not conform to expected type 'AnyObject'

定时器代码如下:

class ViewController: UIViewController { 

     var timer = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: "update", userInfo: nil, repeats: true)

以这种方式在 class 大括号下方(在 viewDidLoad 之前)声明您的 timer

var timer: NSTimer?

现在在您的 viewDidLoad 方法中添加此代码:

timer = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: "update", userInfo: nil, repeats: true)

而且您可以在 class 的任何地方访问它。