通知

通知:  是一個 耗性能的工具
1.添加監聽者
2.在適當的時候發出通知
3.監聽者對象--> 方法 用來處理接收到通知之後的操作
4.當監聽者對象被銷燬的時候,從通知中心移除監聽者

代理: 同一時間 只能 通知到一個對象   (一對一)
通知: 可以通知到多個對象     (一對多)


發出通知的名稱要和註冊監聽者時填寫的通知名稱要保持一致


誰要傳遞消息,誰就發出通知
[NSNotificationCenter defaultCenter] post....];

誰要接收消息,就註冊成爲監聽者

[NSNotificationCenter defaultCenter] addObserver....]


******發出通知要記得在最後要移除通知******

移除通知
一般在監聽器銷燬之前取消註冊(如在監聽器中加入下列代碼):
- (
void)dealloc {
   
//[super dealloc];  ARC中需要調用此句
    [[NSNotificationCenter defaultCenter] removeObserver:
self];
}


      但是   如果是系統發出的通知就不要 移除通知


 // 監聽鍵盤將要改變frame

        NSNotificationCenter.defaultCenter().addObserver(self, selector: "keyboardWillChangeFrame:", name: UIKeyboardWillChangeFrameNotification, object: nil)

        // 表情鍵盤刪除按鈕通知

        NSNotificationCenter.defaultCenter().addObserver(self, selector: "emoticonDeleteButton", name: WBEmoticonDeleteButtonNoti, object: nil)

        // 表情鍵盤按鈕通知

        NSNotificationCenter.defaultCenter().addObserver(self, selector: "emoticonButtons:", name: WBEmoticonButtonsNoti, object: nil)



發佈了37 篇原創文章 · 獲贊 2 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章