使って創ってApp

ソフトウェアを使ったり作ったりするブログです

Swift 2.1 タイマーを使う

1秒ごとに何か処理をしたい。10秒後にアラートを表示したい。これらは NSTimer クラスで実現できます。

NSTimerクラスを使用した、タイマーの使い方

タイマーの実行

1秒ごとに Hello とコンソールに表示するプログラムです。

let timer = NSTimer.scheduledTimerWithTimeInterval(
  1,
  target: self,
  selector: "sayHello",
  userInfo: nil,
  repeats: true
)

func sayHello() {
  print("Hello")
}

タイマーの定義する一行目で、このタイマーは即時実行されます。selectorで指定した関数が呼び出されます。

タイマーの停止

// すでにタイマーが動いているとする
timer.invalidate()

タイマークラスのインスタンスに invalidate() メソッドを呼び出します。このメソッドはNSRunLoopオブジェクトからタイマーを削除します。