Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
- (void)viewDidLoad
[super viewDidLoad];
[self observeModel]
[self render];
- (void)observeModel
// KVO is used to observe model changes
__weak id weakSelf = self;
[self.model addObserverForKeyPath:@"favorite" owner:self block:^(id observed, NSDictionary *change) {
[weakSelf render];
- (void)favoriteButtonTapped:(id)sender
// The action only changes the data, not the UI
self.model.favorite = YES;
- (void)render
self.label.text = (self.model.favorite ? @"Favorite" : @"Not favorite");
// Un-observing code is left out to simplify the example
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment