2015-05-29 2 views
-4

Я делаю приложение для викторины с помощью Swift. Я хочу добавить таймер, отсчитывающий от 60 секунд (1 минута), так что, когда он достигнет 0, игра закончена. Как добавить таймер?Как добавить таймер в приложение iOS, которое завершает игру, когда таймер достигает 0?

+1

Посмотрите на класс NSTimer: https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSTimer_Class/ – Luke

+3

Добро пожаловать ТАК! Вы получите больше помощи (и меньше downvotes), если вы включите немного больше информации в свой вопрос :) Вы попробовали Googling? Вы пытались написать любой код, который вы могли бы добавить в сообщение? Я просто «быстрый таймер» в Googled, и хитом №1 было следующее: http://stackoverflow.com/questions/24007518/how-can-i-use-nstimer-in-swift Вообще, такие вопросы, как «Как мне сделать X ?» получить много критики, отчасти потому, что они предполагают, что SO используется в качестве замены Google ... –

ответ

0

Это может помочь вам разместить свою соответствующую логику игры в функции updateTimer и stopCountDownTimer.

class TimerTestViewController: UIViewController { 

var totalSecondsCountDown = 60 // 60 seconds 
// timer 
var timer : NSTimer! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    self.startCountDownTimer() 
} 

func updateTimer() { 

    if self.totalSecondsCountDown > 0 { 
     self.totalSecondsCountDown = self.totalSecondsCountDown - 1 
     println("timer countdown : \(self.totalSecondsCountDown)") 
    } 
    else { 
     self.stopCountDownTimer(); 
     println("timer stops ...") 
    } 

} 

func startCountDownTimer() { 

    if self.timer != nil { 
     self.timer.invalidate() 
     self.timer = nil 
    } 

    if self.totalSecondsCountDown > 0 { 
     self.timer = NSTimer.scheduledTimerWithTimeInterval(1.0, target: self, selector: "updateTimer:", userInfo: nil, repeats: true) 
     NSRunLoop.currentRunLoop().addTimer(self.timer, forMode: NSRunLoopCommonModes) 
     self.timer.fire() 
    } 

} 

func stopCountDownTimer() { 
    if self.timer != nil { 
     self.timer.invalidate() 
     self.timer = nil 
    } 

} 
} 
Смежные вопросы