Wie erstelle ich eine Verzögerung (delay) in Swift 3? Ich verwende DispatchQueue, aber der Code funktioniert nicht
Hallo zusammen! Ich wechsle zu Swift 3 und versuche, eine einfache Verzögerung vor der Ausführung von Code zu implementieren. Früher in Swift 2 habe ich dispatch_after verwendet, aber jetzt ist diese Methode veraltet. Ich habe gesehen, dass man DispatchQueue verwenden soll, aber ich bekomme es nicht hin.
Hier ist mein Code:
```swift
DispatchQueue.main.asyncAfter(deadline: .now() + 2.0) {
print("2 Sekunden sind vergangen")
}
```
Der Compiler gibt einen Fehler aus: "Cannot convert value of type '()' to expected argument type 'DispatchTime'". Ich habe verschiedene Varianten ausprobiert, z.B. `DispatchTime.now() + 2.0` zu schreiben, aber dann kommt der Fehler "Binary operator '+' cannot be applied to operands of type 'DispatchTime' and 'Double'".
Könnt ihr mir sagen, wie man eine Verzögerung in Swift 3 richtig macht? Ich brauche, dass nach einer Pause von 2 Sekunden ein Codeblock ausgeführt wird. Wenn möglich, zeigt mir bitte ein Beispiel mit verschiedenen Varianten: auf dem Hauptthread und im Hintergrund. Danke im Voraus!
P.S. Ich verwende Xcode 8, Swift 3.
<<>>
Der richtige Weg, eine Verzögerung in Swift 3 zu erstellen
Du
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen