Created
May 17, 2014 01:54
-
-
Save yangboz/ec1f7f60a3615a648bb3 to your computer and use it in GitHub Desktop.
iOS view life circle code example
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@implementation | |
- (void)setup { | |
// Non-UI initialization goes here. It will only ever be called once. | |
} | |
- (id)initWithNibName:(NSString *)nibName bundle:(NSString *)bundle { | |
if ((self = [super initWithNibName:nibName bundle:bundle])) { | |
[self setup]; | |
} | |
} | |
- (void)awakeFromNib { | |
[self setup]; | |
} | |
- (void)viewDidLoad { | |
// Any UI-related configuration goes here. It may be called multiple times, | |
// but each time it is called, `self.view` will be freshly loaded from the nib | |
// file. | |
} | |
- (void)viewDidUnload { | |
[super viewDidUnload]; | |
// Set all IBOutlets to `nil` here. | |
// Drop any lazy-load data that you didn't drop in viewWillDisappear: | |
} | |
- (void)viewWillAppear:(BOOL)animated { | |
[super viewWillAppear:animated]; | |
// Most data loading should go here to make sure the view matches the model | |
// every time it's put on the screen. This is also a good place to observe | |
// notifications and KVO, and to setup timers. | |
} | |
- (void)viewWillDisappear:(BOOL)animated { | |
[super viewWillDisappear:animated]; | |
// Unregister from notifications and KVO here (balancing viewWillAppear:). | |
// Stop timers. | |
// This is a good place to tidy things up, free memory, save things to | |
// the model, etc. | |
} | |
- (void)dealloc { | |
// standard release stuff if non-ARC | |
[[NSNotificationCenter defaultCenter] removeObvserver:self]; // If you observed anything | |
// Stop timers. | |
// Don't unregister KVO here. Observe and remove KVO in viewWill(Dis)appear. | |
} | |
@end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment