2012-04-23 20 views

cevap

18

API çağrısının userDictionary öğesinde veri iletebilirsiniz
NSDictionary *aDictionary = [[NSDictionary alloc] initWithObjectsAndKeys: 
          anObject, @"objectName", 
          anotherObject, @"objectId", 
          nil] autorelease]; 
[[NSNotificationCenter defaultCenter] postNotificationName:@"AnythingAtAll" object:nil userInfo:aDictionary]; 

Sözcüğü, gözlemlediğiniz gelen bildirimden alabilirsiniz. Bildirimi göndermeden önce gözlemciyi ekleyin.

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(anyAction:) name:@"AnythingAtAll" object:nil]; 

bu

İnit yöntemiyle veya dealloc yöntemi gözlemci olarak nesneyi kaldırmak gereken bir viewDidLoad yöntemiyle

-(void)anyAction:(NSNotification *)anote 
{ 
NSDictionary *dict = [anote userInfo]; 
AnyClass *objectIWantToTransfer = [dict objectForKey:@"objectName"]; 
} 

not kalmış olabilir.

[[NSNotificationCenter defaultCenter] removeObserver:self] 
+0

Yardımlarınız için teşekkürler. Ancak, siz nasılsınız, bu yüzden ** addObserver ** ilk önce ** postNotificationName ** daha sonra yapın. [Burada] (http://stackoverflow.com/questions/10283014/can-not-catch-a-notification-in-iphone), yaptığınız gibi aynı şeyi yapıyorum ama ** seçici ** olmuyor hepsinden sonra aradı. – tranvutuan

+0

Bildirimi göndermeden önce gözlemciyi eklemeniz gerektiğini açıkça belirtmek isterim. Genellikle bu init veya viewdidload yöntemlerinde olacaktır. –

+0

Daha fazla örneğe ihtiyacım var .. lütfen bildirimlerle ilgili daha fazla örnek verin. – vijay