سؤال

أرغب في إعادة تحميل طريقة عرض جدول موجودة في فئة أخرى تسمى "WriteIt_MobileAppDelegate" من إحدى فئتي الأخرى التي تسمى "الخصائص". لقد حاولت القيام بذلك عبر فئة NSNotificationCenter - يتم استدعاء السجل ولكن لا يتم تحديث الجدول أبدًا.

الخصائص.

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

writeit_mobileAppDelegate.M

-(void) owakefromnib {

[nsnotificationcenter defaultCenter] addobserver: محدد ذاتي: selector (RELOADITPROPERTIES :) الاسم:@"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
}

ماذا أفعل خطأ هنا؟

هل كانت مفيدة؟

المحلول

يبدو أنك تستخدم object معلمة خاطئة:

addobserver: المحدد: الاسم: كائن:

الإخطار
الكائن الذي يريد الإخطارات التي يريدها المراقب تلقيها ؛
أي أنه يتم تسليم الإشعارات التي أرسلها هذا المرسل فقط إلى المراقب. إذا قمت بتمرير NIL ، فإن مركز الإخطار لا يستخدم مرسل الإخطار لتقرير ما إذا كان سيتم تسليمه إلى المراقب.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top