2010-11-05 93 views

回答

1

你說得對。模型無法做到,而且視圖無法做到。

在我的應用程序中,導航是通過從最大的演示者級聯到較小的演示者來處理的。例如,整個應用程序演示者獲取整個位置,解析它,並將任何相關的片段發送給下一個演示者以獲得更細的細節。

2

我認爲視圖是唯一負責屏幕導航的人。 Here我們對這個「Android-MVP問題」有很好的解釋,我有兩個理由這樣想:

1 - 基本上對我而言,屏幕轉換不過是視圖行爲。它屬於視圖狀態。我們知道演示者必須通過視圖方法來控制視圖狀態,但實際上是實現此轉換的視圖(例如,調用startActivity)。

2 - 屏幕之間的導航有一些Android SDK的依賴關係,比如Intents,Bundles,FragmentsManagers等等......如果你想使用MVP + Clean Architecture(強烈推薦),你「無法」共享你的演示者之間的Android依賴關係,因爲他們應該只是爲了使單元測試更簡單。

+1

這應該是正確的答案。 – 2016-12-12 01:43:08