Définir un NSTimer à tirer une fois dans le futur

Comment puis-je configurer un NSTimer pour tirer une fois dans le futur (par exemple, 30 secondes). Jusqu'à présent, j'ai seulement réussi à le mettre ainsi il se triggers immédiatement, puis à intervalles réguliers.

La méthode que vous voulez utiliser est:

+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval) seconds target:(id) target selector:(SEL) aSelector userInfo:(id) userInfo repeats:(BOOL) repeats 

avec des repeats == NO arguments et de seconds == 30 . Cela va créer le minuteur et le programmer. Il ne tirera qu'une fois, en 30 secondes (et pas immédiatement).

Vous pouvez définir la timer avec votre date future et définir les répétitions sur NON

 + (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval) seconds target:(id) target selector:(SEL) aSelector userInfo:(id) userInfo repeats:(BOOL) repeats 

Utilisez cette méthode de class pour planifier le minuteur.

  +(NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)seconds target:(id)target selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL)repeats 

Paramètres
secondes
Le nombre de secondes entre les tirs de la timer. Si secondes est inférieur ou égal à 0.0, cette méthode choisit à la place la valeur non négative de 0,1 milliseconde.
cible
L'object auquel envoyer le message spécifié par aSelector lorsque le temporisateur se triggers. L'object cible est retenu par le temporisateur et libéré lorsque le temporisateur est invalidé.
aSelector
Le message à envoyer à la cible lorsque la timer se triggers. Le sélecteur doit avoir la signature suivante:
– (void) timerFireMethod: (NSTimer *) theTimer
La timer se passe comme l'argument de cette méthode.
informations user
L'information de l'user pour la timer. L'object que vous spécifiez est conservé par le temporisateur et libéré lorsque le temporisateur est invalidé. Ce paramètre peut être nul.
répète
Si OUI, la timer se répète à plusieurs resockets jusqu'à son invalidation. Si NON, la timer sera invalidée après son triggersment.
Exemple

  [NSTimer scheduledTimerWithTimeInterval:2.0 target:self selector:@selector(targetMethod:) userInfo:[self userInfo] repeats:NO]; 

La timer est automatiquement déclenchée par la boucle d'exécution après 2 secondes. Thème de programmation de timer