Ich habe eine wiederverwendbare Funktion countDown(seconds: Int)
, die Timer-Objekt enthält. Funktion takeRest()
Anrufe countDown(seconds: Int)
Funktion und nach dem Aufruf sofort druckt: "Text testen". Was ich tun möchte, ist mit der Ausführung der Druckfunktion zu warten, bis der Timer innerhalb der countDown(seconds: Int)
Funktion stoppt ausgeführt und countDown()
Funktion wiederverwendbar halten. Irgendwelche Vorschläge?Wie warten, bis der Timer stoppt
private func takeRest(){
countDown(seconds: 10)
print("test text")
}
private func countDown(seconds: Int){
secondsToCount = seconds
timer = Timer.scheduledTimer(withTimeInterval: 1, repeats: true){ [weak self] timer in
if (self?.secondsToCount)! > 0{
self?.secondsToCount -= 1
self?.timerDisplay.text = String((self?.secondsToCount)!)
}
else{
self?.timer.invalidate()
}
}
}
}
Ich denke, Sie wollen den 'then' Aufruf in der else-Klausel nach' timer.invalidate', so dass es ausgeführt wird, wenn der Timer beendet ist. – vacawama
sicher, aber ich bin mir nicht bewusst, Bedingung, dass @ Barola_mes möchte, dass Text gedruckt wird. – dip