android-設計模式的應用

設計模式系列之

一:觀察者模式

背景:當我們退出android應用時,往往不能關閉所有的activity而系統又沒有提供一次性退出所有應用的方法。

此時觀察者模式很好的解決了這個問題:

我們在做android項目時往往用到一個baseactivty,這是繼承了avtivity的基類,我們把在各個activity用到的方法都整理到這個activity,方便以及加速我們的開發過程。

而在我們初始化的方法中我們可以將繼承此類的activity通過一個attach方法:

    private      Vector<Activity> obsVector=new Vector<Activity>();

private Context  context;

      public void attach(Activity activity){

         obsVector.add(activity);

}

再在baseactivity寫一個destroyAllActivity方法結束掉所有activity

public void destroyAllActivity(){
for(obsVector activity:obsVector)

activity.finish();

}

當然你也可以對你想關閉的activity進行控制:

public void detach(Activity activity){
obsVector.remove(activity);

}

當然前提是你在初始化這個activity時,將每個activity 給添加進去一般我們在oncreate方法中添加進去:

public void onCreate(Bundle savedInstanceState){

   super.onCreate(savedInstanceState);

  context=this;

attach(this);
}

這是觀察者模式在項目中普遍用到的,在這裏與大家共享一下,有什麼問題歡迎大傢俬信探討與指教。。

下一篇:爲命令模式在項目中的應用。。敬請期待。。

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