iPhone - запуск селекторов из другого класса - PullRequest
1 голос
/ 18 мая 2010

Я хотел бы перезагрузить табличное представление, которое находится в другом классе с именем «WriteIt_MobileAppDelegate» из одного из моих других классов, которое называется «Свойства». Я пытался сделать это через класс NSNotificationCenter - журнал вызывается, но таблица никогда не обновляется.

Properties.h:

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

WriteIt_MobileAppDelegate.m

- (void) awakeFromNib {

[[NSNotificationCenter defaultCenter] addObserver: self селектор: @selector (reloadItProperties :) name: @ "NameChanged" объект: 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
}

Что я здесь не так делаю?

1 Ответ

2 голосов
/ 18 мая 2010

Похоже, что вы используете object параметр неправильно:

addObserver: селектор: Название: Объект:

notificationSender
Объект которого уведомления наблюдатель хочет получать;
то есть только уведомления отправленные этим отправителем Наблюдатель. Если вы передаете ноль, то Центр уведомлений не использует отправитель уведомления принимает решение следует ли доставить его наблюдателю.

...