Wenn also eine UIB-Taste gedrückt wird, möchte ich ein zufälliges 1 von 4 Bildern erscheinen lassen, aber ich möchte, dass eines der Bilder zu einer zufälligen Zeit erscheint, nachdem die Taste gedrückt wurde. Ich benutze Xcode und swift 2. Ihre Hilfe wird sehr geschätztZufallszeit Swift
-2
A
Antwort
0
Sie brauchen NSTimer (und all die kniffligen Selektor basierte Sachen) überhaupt nicht. Mit Hilfe der Verzögerungsfunktion matt (irgendwo in stackowerflow, ich bin faul, um den Link :-) zu finden, könnte es so einfach sein wie
import Foundation
import XCPlayground
XCPlaygroundPage.currentPage.needsIndefiniteExecution = true
func delay(delay:Double, closure:()->()) {
dispatch_after(
dispatch_time(
DISPATCH_TIME_NOW,
Int64(delay * Double(NSEC_PER_SEC))
),
dispatch_get_main_queue(), closure)
}
func randomDelay(range: Range<UInt32>, completion:()->()) {
if let first = range.first,
let last = range.last {
let d = arc4random_uniform(last) + first
print("now: ",NSDate(),"delay:",d)
delay(Double(d)) {
completion()
}
}
}
let range:Range<UInt32> = 3..<10
// run this on button press
randomDelay(range) {
// update your image here
print("complete:", NSDate())
}
es etwas druckt wie
now: 2016-04-02 07:33:24 +0000 delay: 9
complete: 2016-04-02 07:33:34 +0000
und auf einer anderen " presse '
now: 2016-04-02 07:39:55 +0000 delay: 5
complete: 2016-04-02 07:40:00 +0000
Verwandte Themen
- 1. Swift: eine Reihe von (Swift) Zeichen
- 2. Konvertieren Swift 2 Code Swift 3
- 3. Swift - Importieren Sie meine Swift-Klasse
- 4. Wie Cache mit Haneke Swift Swift löschen?
- 5. Swift Superinitialisierer
- 6. Swift Funktionsalias
- 7. Swift addObject
- 8. in Swift
- 9. Swift popToViewController
- 10. swift UIActivityIndicatorAnzeigen
- 11. DismissViewController Swift
- 12. Swift: Datumsunterschied
- 13. Swift Programmierstil
- 14. Swift - Tabellenansicht
- 15. Swift Funktionsparameter
- 16. Swift Boolean
- 17. MKAnnotation Swift
- 18. Swift Protokollkonformität
- 19. Swift UILongpressGestureRecognizer
- 20. Swift stringByEvaluatingJavaScriptFromString
- 21. Swift UIModalPresentationStyle.PageSheet
- 22. Swift Extensions
- 23. AVAudioSession Swift
- 24. Swift - ADBannerView
- 25. In Swift
- 26. Facebook Swift (Facebook-sdk-swift) Fehler nach pod Hinzufügen
- 27. Swift: Print Html Titel von WebView mit Swift und Javascript
- 28. Swift 1.2 Frameworks in XCode 7/Swift 2.0
- 29. Swift 2 - Objective-C#define in swift konvertieren
- 30. String-Länge in Swift 1.2 und Swift 2.0
Also, wenn ich meine Finger klicke, will ich eine brandneue bmw Pop-up ... StackOverflow Code nicht für Sie schreiben. Was hast du schon probiert? –
@LukePark Ich habe versucht, eine Variable auf ark4random_uniform (5) zu setzen und dann, wenn die Variable gleich einer der Zahlen ist, wird das entsprechende Bild angezeigt, aber das spricht nicht die zufällige Zeit an und ich habe NSTimer nie verstanden. –
Was verstehst du nicht über NSTimer? –