觀察者設(shè)計模式

首先來看看觀察者模式的概念:

定義對象間的一種一對多的依賴關(guān)系宏赘,當一個對象的狀態(tài)發(fā)送改變時籍琳,所有依賴于它的對象都能得到通知并被自動更新

第一句可能不太懂傻盟,但是后面的容易懂司恳,就像天氣預報一樣柿赊,只要你訂閱了俩功,他就會發(fā)短信更新通知你說天氣變化了。這就是觀察者碰声。

觀察者模式的成員:

1)诡蜓、觀察者。我們稱之為Observer胰挑, 有時候我們也成他為訂閱者蔓罚,即Subscriber.

2)椿肩、被觀察者:我們稱之為Observable,即可用被觀察的東西,有時候會成為主題豺谈,Subject

三部曲:

1郑象、創(chuàng)建被觀察者:注冊(訂閱),注銷(取消訂閱)茬末, 更新數(shù)據(jù)(Observable)

以上是被觀察者

2厂榛、觀察者:即Observer也叫Subscriber,在rxjava中Subscriber只是比Observer多了幾個方法相對功能強大點

觀察者接口

3丽惭、訂閱击奶、

訂閱和使用、

二责掏、在Android中的觀察者:

1)正歼、最簡單的按鈕點擊事件(Button)

Button btn = new Button(this);

btn.setOnClickListener(new View.OnClickListener()){

? ? ? public void onClick(View v){?

? ? ? ? ? ?Log.e("Tag", "click");

? ? ? }

}

2)、RecycleView中的addOnScrollListener方法:滾動監(jiān)聽

3)拷橘、Android中自帶的廣播,廣播通過registerReceiver注冊廣播喜爷,通過unregisterReceiver注銷廣播冗疮,通過sendBroadcast發(fā)送廣播。這就是典型的觀察者模式檩帐,

4)术幔、開源框架EventBus也是基于觀察者模式,觀察者模式的三個典型湃密,注冊诅挑、取消注冊,發(fā)送事件泛源。

EventBus

6)拔妥、當然最重量級的還是現(xiàn)在火熱的RXjava,這個也是基于觀察者模式。

①达箍、創(chuàng)建被觀察者:

被觀察者

②没龙、觀察者、即訂閱者

訂閱者

③缎玫、觀察者進行事件的訂閱(被觀察者訂閱觀察者)

訂閱操作

具體的RXjava詳解請查看這里Rxjava詳細解析

支持原文創(chuàng)作:觀察者模式

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末硬纤,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子赃磨,更是在濱河造成了極大的恐慌筝家,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,546評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件邻辉,死亡現(xiàn)場離奇詭異溪王,居然都是意外死亡腮鞍,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,224評論 3 395
  • 文/潘曉璐 我一進店門在扰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來缕减,“玉大人,你說我怎么就攤上這事芒珠∏沤疲” “怎么了?”我有些...
    開封第一講書人閱讀 164,911評論 0 354
  • 文/不壞的土叔 我叫張陵皱卓,是天一觀的道長裹芝。 經(jīng)常有香客問我,道長娜汁,這世上最難降的妖魔是什么嫂易? 我笑而不...
    開封第一講書人閱讀 58,737評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮掐禁,結(jié)果婚禮上怜械,老公的妹妹穿的比我還像新娘。我一直安慰自己傅事,他們只是感情好缕允,可當我...
    茶點故事閱讀 67,753評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蹭越,像睡著了一般障本。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上响鹃,一...
    開封第一講書人閱讀 51,598評論 1 305
  • 那天驾霜,我揣著相機與錄音,去河邊找鬼买置。 笑死粪糙,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的忿项。 我是一名探鬼主播猜旬,決...
    沈念sama閱讀 40,338評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼倦卖!你這毒婦竟也來了洒擦?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,249評論 0 276
  • 序言:老撾萬榮一對情侶失蹤怕膛,失蹤者是張志新(化名)和其女友劉穎熟嫩,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體褐捻,經(jīng)...
    沈念sama閱讀 45,696評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡掸茅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,888評論 3 336
  • 正文 我和宋清朗相戀三年椅邓,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片昧狮。...
    茶點故事閱讀 40,013評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡景馁,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出逗鸣,到底是詐尸還是另有隱情合住,我是刑警寧澤,帶...
    沈念sama閱讀 35,731評論 5 346
  • 正文 年R本政府宣布撒璧,位于F島的核電站透葛,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏卿樱。R本人自食惡果不足惜僚害,卻給世界環(huán)境...
    茶點故事閱讀 41,348評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望繁调。 院中可真熱鬧萨蚕,春花似錦、人聲如沸蹄胰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,929評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽烤送。三九已至,卻和暖如春糠悯,著一層夾襖步出監(jiān)牢的瞬間帮坚,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,048評論 1 270
  • 我被黑心中介騙來泰國打工互艾, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留试和,地道東北人。 一個月前我還...
    沈念sama閱讀 48,203評論 3 370
  • 正文 我出身青樓纫普,卻偏偏與公主長得像阅悍,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子昨稼,可洞房花燭夜當晚...
    茶點故事閱讀 44,960評論 2 355

推薦閱讀更多精彩內(nèi)容