2010-11-05 53 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