我的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()
}
}
答案 0 :(得分:-1)
在计时器声明
中尝试此操作var timer:Timer?
并在viewDidLoad
中设置此项timerLabel.text = "0.0"
同时检查你的xib或故事板如果添加了两次相同的标签