

Swift 2.2のつもりで書いたソースコードです。

[code]

    timer = NSTimer.scheduledTimerWithTimeInterval(0.1, self, selector: #selector(ViewController.timeCheck(_:)), userInfo: nil, repeats: true)}
    
[/code]

これでエラーになります。

Swift 2.1では出なかったエラーです。

下記のソースがSwift 2.1で出なかったソースです。

[code]

    timer = NSTimer.scheduledTimerWithTimeInterval(0.1, target: self, selector: Selector("timeCheck:"), userInfo: nil, repeats: true)
    
[/code]

どこをどう直したらよろしいでしょうか？


CC BY-SA 3.0
2016-04-17T07:30:35.377
24085
2016-04-21T08:44:36.437
2016-04-17T08:04:37.060
5519
15174
question
swift2
Swift 2.1 selector Swift 2.2 #selector


載せていらっしゃるコードが書き間違いでなければ、`scheduledTimerWithTimeInterval()`メソッドの２番目の引数のラベルが抜けています。  
引数ラベルのメソッドのシグネチャのうちなので、書き忘れると別のメソッドになってしまいます。

[code]

    timer  = NSTimer.scheduledTimerWithTimeInterval(0.1, target: self, selector: #selector(ViewController.timeCheck(_:)), userInfo: nil, repeats: true)
    
[/code]

^ 上記のように`0.1, target: self, selector:...`と書く必要があります。


CC BY-SA 3.0
2016-04-17T08:03:52.883
24087
2016-04-17T08:03:52.883
5519
24085
answer