I subscribe to notifications in the SettingsController
controller
- (void)viewDidLoad { [super viewDidLoad]; self.title = LocalizedString(@"titleLabelSettings", @""); [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(updateLabels) name:kNotificationLanguageChanged object:nil]; } - (void)updateLabels { self.title = LocalizedString(@"titleLabelSettings", @""); }
and move on to the next controller
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { [self.navigationController pushViewController:[[ChangeLanguageController alloc] init] animated:YES]; }
The dealloc
method is not called on the SettingsController
- (void)dealloc { [[NSNotificationCenter defaultCenter] removeObserver:self name:kNotificationLanguageChanged object:nil]; NSLog(@"dealloc SettingsController"); }
I ChangeLanguageController
notification from the ChangeLanguageController
controller and the SettingsController
does not receive it. Why?
[[NSNotificationCenter defaultCenter] postNotificationName:kNotificationLanguageChanged object:nil userInfo:nil];