Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
触摸按钮后计时器再次开始计数(Swift)_Swift_Timer_Nstimer - Fatal编程技术网

触摸按钮后计时器再次开始计数(Swift)

触摸按钮后计时器再次开始计数(Swift),swift,timer,nstimer,Swift,Timer,Nstimer,我正在做一个“问答游戏”,并试图给用户设置一个计时器,用户只有10秒的时间来尝试回答问题。如果10秒结束,它将弹出一个需要很长时间才能回答的警报警告。但是如果用户在时间结束前点击了正确的答案,我希望计时器开始新的计数。我在尝试各种方法,但仍然没有得到,也没有找到一个类似于我自己的问题。谢谢 使用NSTimer() 启动计时器: let timer = NSTimer.scheduledTimerWithTimeInterval(1.0, target:self, selector: "updat

我正在做一个“问答游戏”,并试图给用户设置一个计时器,用户只有10秒的时间来尝试回答问题。如果10秒结束,它将弹出一个需要很长时间才能回答的警报警告。但是如果用户在时间结束前点击了正确的答案,我希望计时器开始新的计数。我在尝试各种方法,但仍然没有得到,也没有找到一个类似于我自己的问题。谢谢

使用NSTimer()

启动计时器:

let timer = NSTimer.scheduledTimerWithTimeInterval(1.0, target:self, selector: "update", userInfo: nil, repeats: true)
句柄计时器:

func update() {

seconds++

if seconds >= 10 {

    // alert
    let alert = UIAlertController(title: "Alert", message: "Time Over", preferredStyle: UIAlertControllerStyle.Alert)
    alert.addAction(UIAlertAction(title: "O.K.", style: UIAlertActionStyle.Default, handler: nil))
    self.presentViewController(alert, animated: true, completion: nil)

    // set seconds to 0
    seconds = 0

}}
停止计时器:

timer.invalidate()