iPhone - Lancement sélecteurs d'une autre classe
-
30-09-2019 - |
Question
Je voudrais recharger une vue de table qui est dans une autre classe appelée « WriteIt_MobileAppDelegate » d'un de mes autres classes que l'on appelle « Propriétés ». J'ai essayé de le faire via la classe NSNotificationCenter -. Le journal est appelé, mais la table est jamais mis à jour
Properties.h:
[[NSNotificationCenter defaultCenter] postNotificationName:@"NameChanged"
object:[WriteIt_MobileAppDelegate class]
userInfo:nil];
WriteIt_MobileAppDelegate.m
- (void) {awakeFromNib
[[NSNotificationCenter defaultCenter] addObserver: auto Sélecteur: @selector (reloadItProperties :) nom: @ "NameChanged" objet: auto];
}
- (void) reloadItProperties: (NSNotification *)notification {
NSLog(@"Reloading Data"); //this gets called
[[self navigationController] dismissModalViewControllerAnimated:YES];
[self.navigationController popToRootViewControllerAnimated:YES];
[self.tblSimpleTable reloadData];
[self.tblSimpleTable reloadSectionIndexTitles];
// but the rest doesn't
}
Qu'est-ce que je fais mal ici?
La solution
On dirait que vous utilisez le paramètre object
mal:
addObserver: sélecteur: nom: objet:
notificationSender L'objet dont notifications l'observateur veut recevoir;
qui est, notifications seulement envoyé par cet expéditeur sont livrés à l'observateur. Si vous passez nil, le centre de notification n'utilise pas l'expéditeur de la notification de décider que ce soit de le livrer à l'observateur.