flyingbirdのiPhoneアプリ開発記録

- PolyRhythmの中の人がiPhoneアプリ開発中に思ったことを記録するブログです -

【Swift】NSTimer 一定の間隔であるメソッドを呼びたい場合

flyingbird.hatenablog.com

リンクの記事・・・NSTimerでメソッドを一定間隔で呼びたい!!!をSwiftへ変換するとこうなる・・・
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
Swiftでとあるメソッドを一定の間隔で呼びたい場合の実装方法です。
以下のようにNSTimerのscheduledTimerWithTimeInterval(_:target:selector:userInfo:repeats:)を使うとそんな事が出来ます。
パラメータは・・・
_(timeInterval)は何秒間隔で繰り返すか。
targetはどのオブジェクトのメソッドか。
selectorは呼ぶメソッド。
userInfoは何でも渡せるみたい。AnyObject?型。
repeatsは繰り返すか繰り返さないか。

NSTimer.scheduledTimerWithTimeInterval:1.0 target:self selector:#selector(hoge(_:)) userInfo:nil repeats:true);

呼び出したいメソッドは以下のように定義。
パラメータにNSTimerを受け取る。

func hoge(timer: NSTimer) {
    // ここが実行される
}

↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑