未知的iphone代码

时间:2010-08-13 05:25:22

标签: iphone

我正在看一个由我的组织提供给我的项目,供学习。

问题是在这个项目中我发现了一些我以前从未见过的代码。

请告诉我为什么写下面的代码。

-(void)notifications
{
   [[NSNotificationCenter defaultCenter] addObserver: self selector: 
    @selector(hideViews) name: @"Hide" object:nil]; 
}

出现这个问题是因为这个项目只有一些设计代码。

对不起,如果这是一个愚蠢的问题......

1 个答案:

答案 0 :(得分:3)

您应该了解通知在Cocoa中的工作原理。有关详细信息,请参阅Apple的文档:http://developer.apple.com/mac/library/documentation/Cocoa/Reference/Foundation/Classes/NSNotificationCenter_Class/Reference/Reference.html

基本上,NSNotificationCenter是一个从一个对象向潜在的许多观察对象广播NSNotifications的类。一个对象可以发布通知

[[NSNotificationCenter defaultCenter] postNotificationName:@"NotificationName" object:self];

和其他对象可以收听此通知。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(notificationHandler:) object:theObjectThatPostedTheNotification];

然后,当第一个对象发布通知时,NSNotificationCenter将通知另一个观察对象,并notificationHandler:被调用。