2010-11-13 23 views
0

J'ai un NSTimer qui compte dans une vue, quand je vais à une autre vue Je veux que le Timer continue de compter? Comment puis-je faire cela?NSTimer dans 2 Vues

Répondre

0

Alors, je résolu le problème: je l'ai fait:

-(IBAction)go { 

NinthViewController *screen = [[NinthViewController alloc] initWithNibName:nil bundle:nil]; 
screen.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; 
screen.nextTime = self.actualTime; 
[self presentModalViewController:screen animated:YES]; 
[screen release]; 

}

1

puisque vous voulez l'utiliser dans différentes classes, pourquoi ne pas le mettre dans une classe plus globale, comme l'AppDelegate, par exemple? De cette façon, vous pourriez y accéder à partir de n'importe quelle classe que vous vouliez.

Cordialement

0

Je ne suis pas sûr de Francisco est le meilleur (ou le pire), mais si la minuterie est pas censé être à l'échelle demande, je serais probablement faire que la vue responsable de la minuterie garder la minuterie . Pourquoi ne pas simplement stocker les progrès des minuteurs en quittant la vue et en chargeant la progression lorsque vous ouvrez à nouveau la vue. Bien sûr, vous devez prendre la différence de temps entre la fermeture et l'ouverture de la vue et l'ajouter à la minuterie. Si je me trompe, faites le moi savoir, parce que c'est ainsi que je le fais maintenant.

+0

Oui, je pensais de cette façon aussi. Mais comment puis-je stocker la progression de la minuterie en quittant la vue? C'est mon vrai problème. J'ai mal posé la question. – Leon

+0

stockez-le dans NSUserDefaults. De cette façon, il peut également survivre à la sortie de l'application. –