Ich habe ein Problem mit meiner Counter-Anwendung. Beim Starten des Zählers funktioniert alles gut, aber das Etikett zeigt den Anfangswert 0,0 plus zusätzlich die neue Zeit + = 0,2. Sehen Sie das Ergebnis auf dem Foto unten. Hat jemand eine Lösung? Vielen Dank!Etikett wird zweimal angezeigt. Swift
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()
}
}
C hack dein Storyboard; Ich vermute, du hast deiner Szene zwei Labels hinzugefügt. Einer ist mit der Steckdose verbunden und der andere sitzt nur da und zeigt 0 – Paulw11
Dies scheint ein Storyboard (oder XIB-Datei) zu verwenden, da Sie ein IBOutlet und IBActions haben. Wie ist das Setup? Du hast noch kein Label hinzugefügt, oder? –