从Java代码创建的视图包含在另一个视图中。为什么?

时间:2011-08-20 09:51:00

标签: java android android-layout android-widget

1)为什么,当我从Java代码创建自定义复合视图时,它被包装在另一个视图中,从而创建另一个级别的视图层次结构?如果我使用XML中的<include>标记来创建视图,则不会发生这种情况。 (请参阅层次结构管理器中的附加图像)。有什么理由吗?

enter image description here

2)图像显示(由<include>标签创建视图的部分)另一个有趣的行为 - 可以很容易地在同一层次结构级别上拥有相同android:id的视图。当使用findByViewId()方法时,将返回第一个视图引用。

1 个答案:

答案 0 :(得分:0)

  

有什么理由吗?

因为这是您编写代码的方式如果您不想要这种行为,请修复您的代码。

  

可以很容易地在同一层次结构级别上拥有相同android:id的视图

当然。您始终会看到AdapterView的子类,例如ListView