在自定义视图中扩展子视图

时间:2013-11-03 18:39:17

标签: android xml android-layout

我有一个Cell课,它扩展了LinearLayout。在通过构造函数创建新单元格的过程中,我想通过膨胀xml布局来添加视图。问题是,在我看来,我有两个选择:

  1. 对单个xml文件进行膨胀,该文件包含另一个布局下的所有视图 OR
  2. 对多个xml文件进行充气,每个文件包含不同的视图
  3. 因为我不想添加另一个布局作为布局的孩子,而且我不想夸大许多视图,这样做的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

您可以以编程方式创建视图,如

TextView t = new TextView(context)

但是如果你应用了很多样式,这真的很麻烦。

另一个最容易但最慢的选项就是你提到的:高举每个视图 - 如果你有很多观点(比如20+),请注意这可能会让你失望,因为充气是非常昂贵的。

如果您知道动态视图的最大数量,则第三个选项是使视图包含您需要的所有子视图,并将所有其他子视图设置为invisbile。这也是一个黑客,但速度比。

最后也是最好的选择是继承ListView,只使用Adapter