[swift] NSTimerでタイマー機能を実装

NSTimerでタイマー機能を実装

カウントダウン処理や何秒待ったら処理を開始などの時にNSTimerを使用したタイマーが使える

    let countDownTime:Int = 6  // 猶予時間 6秒
    var waitingTimeCurrent:Int!  // 残り猶予時間
    var waitingTimer:NSTimer?

    override func viewDidLoad() {
        super.viewDidLoad()

        waitingTimeCurrent = countDownTime//猶予時間を初期化
        waitingTimer = NSTimer.scheduledTimerWithTimeInterval(1.0, target: self, selector: #selector(waitingTimer(_:)), userInfo: nil, repeats: true) //1秒間隔にwaitingTimerを実行をスケジューリングし、即開始
    }

    func waitingTimer(timer: NSTimer) {
        waitingTimeCurrent = waitingTimeCurrent!-1 //1秒猶予時間を減らす
        
        if waitingTimeCurrent <= 0 {
            //猶予時間が0以下になったらタイマーを停止し
            waitingTimerStop()
            //処理.....
            
        }else{
            //猶予時間が残っていたら
        }
    }
    
    func waitingTimerStop(){
        // 読み込み停止
        if(self.waitingTimer != nil && self.waitingTimer!.valid){
            self.waitingTimer!.invalidate() //タイマーを無効にする=停止する
        }
    }

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です