我正在尋找一些設計模式來使用Android
應用程序中的一組Activity
。我目前正在開發一個應用程序,我覺得它會在用戶界面的很多修訂之前進行,直到它的「最終」版本(如果有的話)。我在模式中使用Service
中的控制器思考了一些問題,但我找不到任何好的例子。我發現唯一常見的參考是使用AIDL
進行進程間接口綁定,這將不適用。Android MVC設計模式
基本上我想是用於Activity
實現諸如showLoginScreen()
,loginError()
等使得任何UI應該能夠實現(該控制器不直接依賴於該視圖中,只有它的接口)定義的Interface
。如果這是最簡單的方法來實現這一點,那麼獲取句柄到活動Activity
s的最佳接受方式是什麼?我一直很困惑當你調用一個不活動的Activity
上的方法時會發生什麼。
我正在考慮沿着Application
類中的Map
行作爲單例嗎? Map
的put()
/remove()
將被連接到onStart()
和onPause()
。儘管如此,這仍然不能保證Activity
仍然存在...可以通過密鑰上的get()
獲得參考,然後在Service
有機會調用其接口之前它可以是paused()
。
任何建議或見解,將不勝感激。
編輯:我已經看過其他職位如MVC pattern on Android但他們大多沒有解決執行(和接受的答案我只是平了不同意反正)
爲什麼你想要有多個活動?每個活動是否代表您在MVC中的視圖? – Noel 2011-06-11 23:54:09
每個Activity都是一個用戶需要與之交互的獨立屏幕。他們不會嘗試完成相同任務的多項活動。除了全屏3D遊戲,我不知道只有一個活動的任何應用程序。 – Ryan 2011-06-11 23:58:01
您是否考慮過使用單個Activity作爲您的控制器,然後在運行時動態切換屏幕/視圖? – Noel 2011-06-12 00:04:54