項目中觀察者模式的應用

目前項目中最多用的模式就是觀察者模式了。。。該模式是當有數據狀態變化須要及時通知的時候使用的網絡

項目中其中之一的應用場景:ide

    當網絡狀態發生變化時影視下載界面提示當前是使用免費的wifi仍是機主本身的流量this

1.首先定義被觀察者的實體類server

public class NetworkTypeNotifier extends Observable {
//發生變化時調用該方法通知
public void notifyAll(NetworkType networkType) {
this.setChanged();
this.notifyObservers(networkType);
}
}it

2.能夠在項目的Application中實例化該實體類io

3.定義觀察者class

private Observer mTitleNetWorkObserver = new Observer() {
@Override
public void update(Observable observable, Object data) {
//數據變化時須要作的動做date


}
};network

4.當想觀察的數據發生變化時調用notifyAll方法通知數據變化下載

 

public void setCurrentNetworkType(NetworkType currentNetworkType) { if (this.currentNetworkType != currentNetworkType) { //通知數據變化 this.mNtn.notifyAll(currentNetworkType); } this.currentNetworkType = currentNetworkType; }

相關文章
相關標籤/搜索