timer.invalidate() 导致崩溃,说 thread1:breakpoint1.1

timer.invalidate() causes a crash,saying thread1:breakpoint1.1

导入 UIKit

class ViewController: UIViewController
 {


    @IBOutlet weak var secondsLabel: UILabel!
    @IBOutlet weak var milliSecondsLabel: UILabel!

    var milliTimer=NSTimer()

    var count:Int=1
    var milliCount:Int=1

    @IBAction func StartPauseTimer(sender: AnyObject)
    {
        milliTimer=NSTimer.scheduledTimerWithTimeInterval(1/100, target: self, selector: Selector("milliIncTimer"), userInfo: nil, repeats: true)

    }
    @IBAction func StopTimer(sender: AnyObject)
    {
        milliTimer.invalidate()
        count = 1  ///this the place i get the error 
                    //on pressing stop button,
                    //it says thread1:breakpoint1.1
        milliCount = 1

        secondsLabel.text = "0"
        milliSecondsLabel.text = " "
    }
    override func viewDidLoad()
    {
        super.viewDidLoad()

    }
    func milliIncTimer()
    {
        if milliCount==101
        {
            milliCount = 1
            secondsLabel.text = "\(count++)"
        }
        milliSecondsLabel.text = "\(milliCount++)"
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}

日志是这样说的

在 UIViewAlertForUnsatisfiableConstraints 处创建符号断点以在调试器中捕获此问题。 中列出的 UIView 的 UIConstraintBasedLayoutDebugging 类别中的方法也可能有帮助。 (lldb)

您可能不小心设置了断点。

在你的代码就行了:

count = 1

现在在那条线上向左看,您会看到一个蓝色箭头。

您可以通过向右拖动此箭头并松开来删除箭头。

希望对您有所帮助!