【问题标题】:Using 'self' in Swift 2, Xcode 7.0.1在 Swift 2、Xcode 7.0.1 中使用“自我”
【发布时间】:2015-10-24 05:22:18
【问题描述】:

我在类左大括号下(在 viewDidLoad 之前)制作了一个计时器,用作整个类的变量。但是,当我尝试将计时器的目标设置为“自我”时,出现错误:

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)

【问题讨论】:

    标签: ios swift swift2 nstimer xcode7


    【解决方案1】:

    这样声明你的timer就在类左大括号下(在viewDidLoad之前):

    var timer: NSTimer?
    

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

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

    你可以在课堂上的任何地方访问它。

    【讨论】:

    • 为什么初始化计时器只是为了稍后扔掉那个实例?
    • 抱歉,我没有收到您的问题。
    • 您应该使用var timer: NSTimer?,而不是在设置之前创建一个。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多