, , .
, "" .
boolean, false (NO).
Then in viewWillDisappear, if the boolean is NO, I set it to YES and show a warning.
I then reset the boolean value NO is viewDidDisappear (this can also be done in an Alert callback).
Not very elegant, but it seems to work quite well.
- (void) viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
if ([self isDirty] && ![self showingAlert])
{
[self setShowingAlert:YES];
UIAlertView *alert =
[[UIAlertView alloc]
initWithTitle: @"Save Changes?"
message: @"Use it or lose it, matey."
delegate: self
cancelButtonTitle:@"Save"
otherButtonTitles:@"Don't Save",nil];
[alert show];
[alert release];
}
}
- (void) viewDidDisappear:(BOOL)animated
{
[super viewDidDisappear:animated];
[self setShowingAlert:NO];
}
Snips source
share