Android當中的設計模式觀察者模式

2021-06-29 13:21:11 字數 811 閱讀 8895

在listadapter當中需要實現乙個3個方法,baseadapter是這樣實現的

public void registerdatasetobserver(datasetobserver observer) 

public void unregisterdatasetobserver(datasetobserver observer)

public void notifydatasetchanged()

這讓我們很容易聯想到觀察者或者叫堅挺著模式。這是一種什麼模式呢:

mdatasetobservable就是乙個儲存所有觀察者的資料集合,用於監聽介面卡當中資料的變化

public class datasetobservable extends observable

obeserveable是乙個抽象類。

public abstract class observable

觀察者觀察資料的變化,來進行相應的操作,需要繼承datasetobserver類,

當資料變化的時候,這兩個函式將會被呼叫

public void onchanged() 

public void oninvalidated()

而這實現的原理在於,datasetobservable類當中,notifychanged和notifyinvalidated中,呼叫了每乙個觀察者的onchange()和oninvalidated()方法。

android設計模式

一句話總結23種設計模式 目錄android的設計模式 設計模式的六大原則 一句話總結23種設計模式則 建立型模式 android的設計模式 單例模式 android的設計模式 建造者模式 android的設計模式 工廠方法模式 android的設計模式 簡單工廠模式 android的設計模式 抽象...

android設計模式 命令設計模式

1.系統需要將請求呼叫者和請求接收者解耦,使得呼叫者和接收者不直接互動。2.系統需要在不同的時間指定請求 將請求排隊和執行請求。3.系統需要支援命令的撤銷 undo 操作和恢復 redo 操作。4.系統需要將一組操作組合在一起。command命令角色 定義命令的介面,宣告具體命令類需要執行的方法。這...

Android設計模式 策略模式

策略模式用於演算法的自由切換和擴充套件,分離演算法的定義與實現。android中策略模式的應用有webview設計,animation中的interpolator設計 例如電商應用中的商品 計算 fun main args array inte ce pricestrategy class norm...