我想知道在这种情况下 PureMVC 中继承类视图的最佳实践:
- 多个类继承一个 BaseClass(比如说 InheritedClass1 和 InheritedClass2)
- 每个 InheritedClass 都有各自的视图(派生自基本视图类,但每个都是唯一的)
- 对于给定的数据集(假设是 InheritedClass1/2 对象的 ArrayCollection),需要动态加载相应的视图。
- 数据集相对较大,所以 TileList 会很好(因为它只实例化当前显示的对象)
我可以想到几个解决方案,但我发现它们太“hackish”而不能成为最佳解决方案:
在视图中:在 BaseClassView 上的中继器将视图属性分配给状态(设置为“InheritedClass1”状态以添加 InheritedClass1 对象)优点:没有不必要的内存增加(状态的对象在需要时被实例化)缺点:视图取决于数据类型,因此增加了耦合
在 Mediator 中:循环 ArrayCollection 和 addChild() 基于数据类型的视图 Pros: Works。缺点:Mediator 正在向 View 添加东西,这违背了 Mediator 和 View 分离的观点。比中继器慢。
任何意见或其他建议将不胜感激。谢谢!