我的Counter应用程序出了问题。启动计数器时一切正常,但标签显示初始值0.0加上新的时间+ = 0.2。请参阅下面的结果。有没有人有办法解决吗?谢谢!
import UIKit
class CounterViewController: UIViewController {
var time = 0.0
var timer = Timer()
@IBOutlet weak var timerLabel:UILabel!
@IBAction func startCounter(_ sender:UIButton){
timer = Timer.scheduledTimer(timeInterval: 0.2, target: self, selector:#selector(CounterViewController.startAction), userInfo:nil, repeats: true)
}
@IBAction func pauseCounter(_ sender:UIButton){
timer.invalidate()
}
@IBAction func stopCounter(_ sender:UIButton){
timer.invalidate()
time = 0.0
timerLabel.text = "\(time)"
}
@objc func startAction(){
time += 0.2
timerLabel.text = "\(time)"
}
override func viewDidLoad() {
super.viewDidLoad()
}
}
在计时器声明中尝试这个
var timer:Timer?
并在viewDidLoad中设置它
timerLabel.text = "0.0"
还要检查你的xib或故事板如果添加了相同的标签两次