我知道可以宣布一个"虚拟" XML中的元素,例如textView,并使用layoutInflater加载它,并可能更改它的文本。
所以我认为,可以在xml文件中构建一组虚拟视图,然后使用layoutInflater更改文本,imageResources加载它,然后将其附加到tableLayout中。例如。
让我们说我有一个TableRow,里面有一个图像和一个文本。我可以加载这个xml,更改textView的文本,更改图像的imageResource然后将其附加到tableLayout吗?
答案 0 :(得分:0)
是的,你可以。在充气后,您可以使用parentView.findViewById(id)将视图转换为其类型和/或访问子视图。您也可以像在TableLayout中一样动态添加或删除ViwGroup。当您使用ListViews时,您可以阅读有关convertView的信息。这是重用视图的一个例子。
答案 1 :(得分:0)
要将视图从一个布局移动到另一个布局,必须从包含该布局的布局中删除该视图,然后才将其添加到其他布局。 此外,我认为视图不能在活动之间移动,因为它们引用了活动(作为上下文)。
顺便说一下,你不需要用xml来创建视图,你可以使用简单的java代码(CTORs)。当您创建视图时,您甚至不必将视图放在布局上,因为您可以使用inflater来完成此工作(或者,如上所述,CTOR)。