通知没有得到所谓的

问题描述:

在当执行方法的类,我已经把这个:通知没有得到所谓的

[[NSNotificationCenter defaultCenter] postNotificationName:@"locationFromZipFound" object:array]; 

,并在这我想收到通知之类的我有这样的:

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

问题是,这是从未被称为:

-(void)getZipLocation:(NSNotification *)notification; { 
NSLog(@"Zip received and put into array!"); 
NSArray *location = [notification object]; 
} 

任何想法? 在此先感谢。

我复制并粘贴你的代码,它对我很好。 我把postNotification放在一个按钮上,addObserver放在viewDidAppear:animated上。

+0

感谢您的帮助。我通过在'viewDidLoad'中注册通知来实现它。 – 2010-12-18 17:32:13

没关系!我试图用一种方法注册通知,而且看起来好像不是那样。我只是在viewDidLoad注册通知,所有似乎都很好!

+1

请确保你确定有多次调用该方法,因为每次调用viewDidLoad时它都会再次注册......当您在屏幕上看到内存警告时会发生这种情况,那么它将转储视图并重新当你回到屏幕时加载它。 – 2010-12-18 19:48:55

+0

@Kendall好点!如果我把它放在方法中,似乎没有注册通知的任何原因? – 2010-12-18 19:51:06

+0

这取决于您将其放入哪种方法,它可能是在课程尝试注册之前触发通知。把它放在viewDidLoad中没有什么问题,只是意识到它可能会被多次调用。 – 2010-12-19 07:05:29