【问题标题】:Inflating views dynamically across app跨应用程序动态扩展视图
【发布时间】:2015-08-24 11:33:32
【问题描述】:

我在我的应用中使用了一些视图,我正在动态地将它们添加到片段中。

视图类型取决于服务器数据,因此我不能将 includes 用于片段布局。

每个片段可以有不同的视图组成,例如视图 1、视图 2、视图 3,

Fragment 1 can have View 1, View 3 

Fragment 2 can have View 2, View 3 

目前我正在夸大每个片段中的视图,但这从设计的角度来看并不是很好。

每当我对一个片段进行更改时,我都必须在 ALL 其他片段中进行更改。

有什么设计建议吗?

【问题讨论】:

  • 嗯...您可能应该考虑将您的片段拆分为较小的片段(每个片段都具有 1 个视图),这些片段可以很好地完成一件事并且不会重叠(如果可能的话)。一旦你做到了这一点,你就消除了复制/粘贴的问题,因此如果你改变了一个,就需要重复维护所有这些问题。然后,您可以在需要时组合这些片段,就像您已经做的那样。如果我是你,这就是我试图解决问题的方式,但是你的问题不是很清楚,所以这可能是不可能的。

标签: android android-fragments android-view code-reuse


【解决方案1】:

在设计方面,View 只是一个容器,您可以在其中表示选定的数据片段。这意味着您示例中的所有 3 个 Views 应该是单独的 View 实例,它们共享要显示的公共数据。当数据改变时,Views 应该改变。

请注意,这是一个设计答案,我不会提供任何代码,您必须自己设计实现:-)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-08
    • 2012-03-17
    • 2017-02-16
    • 2017-06-10
    • 2018-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多