回答
我知道這不是一般的回答問題的好辦法,但RTFM。
NSNotification對象封裝信息,以便它可以通過NSNotificationCenter對象廣播到其他對象。 NSNotification對象(稱爲通知)包含名稱,對象和可選字典。該名稱是標識通知的標籤。該對象是通知的發佈者想要發送給該通知的觀察者的任何對象(通常是發佈通知的對象)。該字典存儲其他相關對象,如果有的話。 NSNotification對象是不可變的對象。
您可以使用類方法notificationWithName:object:或notificationWithName:object:userInfo:創建通知對象。但是,您通常不會直接創建自己的通知。 NSNotificationCenter方法postNotificationName:object:和postNotificationName:object:userInfo:允許您方便地發佈通知,而無需先創建它。
你應該看看Notifications section in the Cocoa Fundamentals Guide。您需要了解有關通知的任何內容:從定義到用例。
在事件方面NSNotifications是委託的替代方案。可以使用委託來通知一個事件的單個代表,而通知可用於通知任意數量的接收器。通知被髮送到主通知中心,然後通知所有已註冊通知的對象。
一個重要的區別是,使用委託您可以接收委託人對事件的響應,而使用NSNotifications您只需發送通知,但您不知道接收者或他們對通知的響應。
當您想從iOS接收警報時,您註冊了一個UINotification。因此,如果您想在插入配件或插入電視機時執行某些操作,則會爲其註冊一個UINotification,並在事件發生時調用應用程序中的方法。
NSNotifications允許您在事件發生時調用一個方法。 例如,如果你有一個MPMoviePlayer,你想待辦事項的東西,當它完成後,你可以使用下面的代碼:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(movieFinished:) name:MPMoviePlayerPlaybackDidFinishNotification object:yourMoviePlayer.moviePlayer];
或者,如果你想要做的事,當設備旋轉:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(orientationChanged:) name:UIDeviceOrientationDidChangeNotification object:self];
- 1. Gps通知iphone sdk
- 2. NS通知監聽
- 3. NS通知問題
- 4. NS通知問題
- 5. 本地通知iPhone sdk
- 6. iPhone的SDK 4.3 GDB通知
- 7. Swift 3:NS通知與通知
- 8. NS通知監聽器iOS
- 9. NS通知沒有返回
- 10. NS通知TableViewController不工作
- 11. NS通知不起作用
- 12. 測試NS通知傳遞
- 13. NS通知觸摸覆蓋
- 14. NS通知訂單問題
- 15. NS通知多線程XCODE
- 16. NS操作iPhone
- 17. 抵達當地通知iphone sdk
- 18. UIKeyboard通知的最佳實踐 - iPhone SDK
- 19. iPhone的SDK:本地通知限制
- 20. iPhone sdk位置更改通知
- 21. iPhone SDK中前臺的本地通知
- 22. NS通知問題的textfield和textview
- 23. 可可NS通知監控程序
- 24. NS通知按鈕按下按鈕
- 25. 合併NS同名的通知
- 26. NS觀察員通知的通知順序
- 27. 推送通知?Iphone
- 28. iphone - 通知
- 29. 聽iphone通知?
- 30. Iphone MPMoviePlayer通知
可能[什麼是NSNotification?](http://stackoverflow.com/questions/1900352/what-is-nsnotification) – 2010-09-19 22:35:27