Как я могу сбросить значения приложения, когда я возвращаюсь в главное окно?
У меня есть приложение с несколькими представлениями, последнее окно содержит таймер и 2 счетчика, первый раз, когда я запускаю приложение, оно нормально, но когда я возвращаюсь к первому окну и выполняю те же шаги, чтобы добраться до последнего окна, первые значения времени все еще там. что я могу сделать?
Это код (последнее окно):
`enter code here`
// Created by MiniMac on 3/26/12.
// Copyright (c) 2012 __MyCompanyName__. All rights reserved.
//
#import "juegoAB.h"
#import "SwitchViewController.h"
@implementation juegoAB
@synthesize cronometro, button, Rounds;
int y = 0;
- (IBAction)buttonPressed: (id) sender {
y++;
if (y>10) y=10;
[self updateText];
}
- (void)updateText {
switch (y) {
case 0: [Rounds setText:@"5."]; break;
case 1: [Rounds setText:@"5."]; break;
case 2: [Rounds setText:@"4."]; break;
case 3: [Rounds setText:@"4."]; break;
case 4: [Rounds setText:@"3."]; break;
case 5: [Rounds setText:@"3."]; break;
case 6: [Rounds setText:@"2."]; break;
case 7: [Rounds setText:@"2."]; break;
case 8: [Rounds setText:@"1."]; break;
case 9: [Rounds setText:@"1."]; break;
case 10: [Rounds setText:@"0."]; break;
default: break;
}
}
NSTimer *timer; int i;
-(IBAction)playsound {
NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:
@"%@/disparo04.WAV",[[NSBundle mainBundle] resourcePath]]];
NSError *error;
audioplayer = [[AVAudioPlayer alloc]initWithContentsOfURL:url error:&error];
audioplayer.numberOfLoops = 0;
if(audioplayer == nil) NSLog(@"%@",[error description]);
else [audioplayer play];
}
-(IBAction)pressButton {
i = 11;
timer = [NSTimer scheduledTimerWithTimeInterval:1
target:self
selector:@selector(timerFires)
userInfo:nil
repeats:YES];
[timer fire];
}
- (void) timerFires{
if(i > 0) {
i--;
cronometro.text = [NSString stringWithFormat:@"%i", i];
} else {
cronometro.text = @"TIEMPO!!";
timer = nil;
}
}
- (IBAction)onStopPressed: (id)sender {
[timer invalidate];
timer = nil;
}
-(IBAction)generateNumbers {
int randomNumber = rand() % 26;
switch (randomNumber) {
case 0:
label.text = @"A";
label1.text = @"Z";
label2.text = @"Q";
break;
case 1:
label.text = @"B";
label1.text = @"Y";
label2.text = @"W";
break;
-(IBAction)plus {
counter=counter + 1;
count.text = [NSString stringWithFormat:@"%i",counter];
}
-(IBAction)zero {
counter=counter - 1;
count.text = [NSString stringWithFormat:@"%i",counter];
}
-(IBAction)plus2 {
counter2=counter2 + 1;
count2.text = [NSString stringWithFormat:@"%i",counter2];
}
-(IBAction)zero2 {
counter2=counter2 - 1;
count2.text = [NSString stringWithFormat:@"%i",counter2];
}
- (void)viewWillAppearBOOL)animated {
[super viewWillAppear:animated];
}
- (id)initWithNibName:(NSString *)nibNameOrNil
bundleNSBundle:(NSString *)nibBundleOrNil {
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (IBAction)goBack {
SwitchViewController *second = [[SwitchViewController alloc]
initWithNibName:nil bundle:nil];
[self presentModalViewController:second animated:YES];
[second release];
}
- (void)dealloc {
[cronometro release];
[button release];
[Rounds release];
[super dealloc];
}
- (void)didReceiveMemoryWarning {
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];
// Release any cached data, images, etc that aren't in use.
}
#pragma mark - View lifecycle
- (void)viewDidLoad{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
}
- (void)viewDidUnload {
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}
- (BOOL)shouldAutorotateToInterfaceOrientationUIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
- (void)resetToOriginalState: (id)sender {
//Do your stuff here
}
@end
Есть способ вернуться к моему первому окну и перезагрузить приложение, как при первом его открытии.
Я надеюсь, что любой может помочь ...
Thanx!