Wie man eine Verzögerung (delay) in Swift erstellt: Eine vollständige Anleitung
Hallo zusammen! Ich bin neu in Swift und iOS-Entwicklung. Ich schreibe eine einfache App zum Üben – einen Countdown-Timer. Ich brauche, dass das Programm nach dem Drücken des "Start"-Buttons 3 Sekunden wartet und dann eine Aktion ausführt (z. B. eine Nachricht anzeigt oder eine Animation startet).
Ich habe versucht, `sleep(3)` zu verwenden, aber das blockiert anscheinend die gesamte Benutzeroberfläche – die App friert für 3 Sekunden ein, und die Buttons sind nicht klickbar. Das ist nicht das, was ich brauche.
Könnt ihr mir bitte sagen, wie man eine Verzögerung in Swift richtig macht, damit die Benutzeroberfläche reaktionsfähig bleibt? Am liebsten mit einem Codebeispiel für iOS (UIKit oder SwiftUI). Ich habe von `DispatchQueue.main.asyncAfter` gehört, verstehe aber nicht ganz, wie das funktioniert.
Hier ist mein aktueller (falscher) Code:
```swift
@IBAction func startButtonTapped(_ sender: UIButton) {
print("Starte Verzögerung...")
sleep(3) // Das blockiert die UI
print("3 Sekunden sind vergangen")
// Hier wird die UI aktualisiert
}
```
Vielen Dank im Voraus für eure Hilfe!
<<>>