Question

Je me demande s'il y a une manière que je peux créer une minuterie qui compte à rebours à partir d'un moment donné. Par exemple, dire que je veux que cette minuterie pour durer une heure. Il y aura un NSTextField qui affiche le temps restant (ex. 25 minutes), et mettra à jour automatique toutes les minutes à la nouvelle valeur. Et puis, quand une heure est finalement adopté, il fonctionnera une fonction. J'ai vu des gens suggérant NSTimer et NSDate pour cela, mais me demande ce que vous pourriez suggérer tous.

Merci!

EDIT: Mon code actuel (timeInstance est une variable d'instance):

- (void)awakeFromNib:
{
timeInstance = [[NSDate date] addTimeInterval:(10 * 60)];
[timeInstance retain];

[timer invalidate];
timer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(timer:) userInfo:NULL repeats:YES];
}

- (void)timer:(NSTimer *)myTimer
{
NSDate *now = [NSDate date];
// Compare
}
Était-ce utile?

La solution

NSTimer et NSDate sons parfaitement raisonnable.

EDIT: Comme une note de côté, il pourrait être une bonne idée d'augmenter la fréquence à l'approche du temps cible; vous permettant de changer d'affichage de l'heure à l'affichage minute à la deuxième affichage.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top