【发布时间】:2017-01-28 07:21:27
【问题描述】:
我需要根据从服务器检索到的配置在运行时动态创建控件。我也在尝试使用 MVVM 模式。
为了简单起见,假设我必须在 View 中创建 N 数量的 UILabels,每个都有自己的设置(颜色、字体等),所有这些都基于服务器的配置。
首先想到的是在我的ViewModel 中有一个listUILabels 属性,并让ViewModel 负责创建UILabel 对象并设置它们的属性/属性(颜色、字体、等)。
然后View 将遍历viewModel.listUILabels 中的每个UILabel,通过self.view.addSubview() 添加每个@
但是我在一些示例中读到,ViewModel 不应引用 UIKit,而应仅提供 View 的数据、属性和枚举(请随时对此发表评论)。
为了遵守 MVVM 规则,我应该如何划分我的逻辑,在这种情况下,视图内部是什么以及 ViewModel 内部是什么?
【问题讨论】:
标签: ios swift mvvm dynamic-controls