2010-08-13 62 views
1

我正在查看一個由我的組織提供給我的項目,供學習。未知的iphone代碼

問題是,在這個項目中,我發現了一些我從未見過的代碼。

請告訴我爲什麼寫下面的代碼。

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

出現此問題是因爲此項目只有一些設計代碼。

很抱歉,如果這是一個愚蠢的問題...

+0

如果您告訴我們哪種編程語言可能會有所幫助。或者是測試 - 只有知道該語言的人才能回答?說真的,你提供的信息越多,你可以期望獲得的幫助越多。 – Mawg 2010-08-13 05:51:16

+1

@LeonixSolutions - 標記爲iphone-sdk,暗示了Objective-C。語法也很清楚Objective-C。 NSNotificationCenter本身是一個Objective-C的東西:) – 2010-08-13 05:55:06

+0

感謝澄清(+1)。對不起,太笨了。每天都有新的東西;-) – Mawg 2010-08-14 01:47:22

回答

3

您應該通知可可如何工作的閱讀起來。有關更多信息,請參閱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:被調用。