Frage

Ich mag eine Tabellenansicht neu zu laden, die in einer anderen Klasse namens „WriteIt_MobileAppDelegate“ von einem meiner anderen Klassen, die „Eigenschaften“ aufgerufen wird. Ich habe versucht, dies über die NSNotificationCenter Klasse zu tun -. Das Protokoll wird aufgerufen, aber die Tabelle wird nie aktualisiert

Properties.h:

 [[NSNotificationCenter defaultCenter] postNotificationName:@"NameChanged"
              object:[WriteIt_MobileAppDelegate class]
               userInfo:nil]; 

WriteIt_MobileAppDelegate.m

  

- (void) awakeFromNib {

     

[[NSNotificationCenter defaultCenter] addObserver: Selbst               Selektor: @selector (reloadItProperties :)                Name: @ "NameChanged" Objekt: self];

     

}

- (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
}

Was mache ich hier falsch?

War es hilfreich?

Lösung

Scheint, wie Sie den object Parameter falsch verwenden:

addObserver: Selektor: Name: Objekt:

  

notificationSender
  Das Objekt, das   Meldungen der Beobachter will   erhalten;
  Das heißt, nur Meldungen   eingesandt von diesem Absender werden geliefert   der Beobachter. Wenn Sie passieren Null, die   Notification Center verwendet nicht ein   Benachrichtigung des Absenders zu entscheiden,   ob es den Betrachter zu liefern.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top