Swift 问题,如何将我的计时器停止在 00:00 而不是负数

Swift question, how to stop my timer at 00:00 not negative number

我想知道如何在 00:00 停止我的简单计时器。

我在条件语句中添加了 "else if seconds < 0 then invalidate()"

但是,它停在 00.-1。

作为初学者,我想我错过了一些简单的语法或逻辑。

我需要你的慷慨帮助。

谢谢:)

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var showTime: UILabel!

    var timer = Timer()
    var timeSet = 0

    override func viewDidLoad() {
        super.viewDidLoad()

    }

    @IBAction func buttonToSet(_ sender: UIButton) {

        stopTimer()
        timeSet += 5
        timer = Timer.scheduledTimer(timeInterval: 1.0, target:self, selector: #selector(setTimer), userInfo:nil, repeats: true)

    }

    @IBAction func buttonToReset(_ sender: UIButton) {

        stopTimer()
        timeSet = 0
        showTime.text = "00:00"

    }

    @objc func setTimer() {

        let seconds = timeSet % 60
        var secondsString = "\(seconds)"
        let minutes = timeSet / 60
        var minutesString = "\(minutes)"

        if seconds < 10 && seconds >= 0 {
            secondsString = "0\(seconds)"
        } else if seconds < 0 {
            timer.invalidate()
        }


        if minutes < 10 {
            minutesString = "0\(minutes)"
        }

        showTime.text = "\(minutesString):\(secondsString)"
        timeSet -= 1

    }

    func stopTimer() {
        timer.invalidate()
    }

}

更新您的条件...目前当秒低于 0 时..然后计时器失效...

 if seconds < 10 && seconds >= 0 {
     secondsString = "0\(seconds)"

         if seconds == 0 {
            timer.invalidate()

            }
        }