2014-10-06 80 views
0

因此,我阅读了关于VIPER architecture的内容,我在想如何使用View,View Model,Presenter和View之间建议的图层分隔来实现主 - 细节视图组合控制器路由?使用视图模型和图层分隔来实现主 - 细节视图

假设我想显示一些联系人。我有ContactsListViewModel及其属性名称,照片和一些细节文本。这是ContactsListPresenterContactsListViewController已知的。

现在我在我的表格视图中选择一个联系人,视图控制器将此告诉演示者,演示者告诉线框显示详细视图...什么?

List模块已知的视图模型没有包含足够的信息来显示详细信息(如进一步的注释,调用列表,任何...)。

在这种情况下,是否应该有一个可用于列表和详细视图的视图模型?那是否会违反分离关注点

回答

0

据我所知,你有2个选项 -

  1. 传递,其中包括所有数据你需要的联系人列表视图控制器模型。由此你将获得所有你需要的数据。 - 我个人认为在某些情况下它可以,即使这有点浪费。
  2. 传递到详细视图的线框中的联系人ID。然后在视图控制器的加载部分通过presnter加载,然后交互联系人的全部数据,然后显示它。
+0

我完全忘了我在这里问了这个问题。但是你是对的,那基本上就是你拥有的两种选择。虽然两者都不完美,但似乎没有其他办法。 – 2015-01-20 09:46:41

相关问题