2016-07-20 4 views
-2

Ich habe derzeit eine Check-in-Taste in meiner App, die gerade funktioniert, aber ich möchte sie nach dem ersten Check-in deaktivieren und nach 30 Minuten wieder aktivieren. Ich weiß, ich kann einfach tun:Wie aktiviere ich eine Taste nach Ablauf einer bestimmten Zeit erneut?

checkInButton.enabled = false 

und dann wieder aktivieren, es noch einmal, aber wie kann ich es so einrichten, es automatisch wieder aktiviert sich nach 30 Minuten?

Antwort

1

Verwenden Sie den folgenden Code

let timer = NSTimer.scheduledTimerWithTimeInterval(seconds, target: self, selector: Selector("enableButton"), userInfo: nil, repeats: false) 

func enableButton(){ 
    self.checkInButton.enabled = true 
} 
+0

tun auch meine Antwort Bitte upvote – abhishekkharwar

1

Anruf durchführen Selektors

[self performSelector:@selector(enableButton) withObject:nil afterDelay:1.5]; 

oder verwenden timer:

[NSTimer scheduledTimerWithTimeInterval:1.5 target:seld selector:@selector(enableButton) userInfo:nil repeats:NO] 

1,5 auf Sekunde ist. Sie müssen die aufgerufene Methode

-(void)enableButton{ 
    checkInButton.enabled = true 
} 
+0

Umsetzung Gibt es einen schnellen Weg, um diese – SwiftyJD

1

@try diese

let seconds = 60.0 * 30 // Number of seconds in 30 mins 
let dispatchTime: dispatch_time_t = dispatch_time(DISPATCH_TIME_NOW, Int64(seconds * Double(NSEC_PER_SEC))) 

      dispatch_after(dispatchTime, dispatch_get_main_queue(), { 

        self.checkInButton.enabled = true 


      }) 
Verwandte Themen