我已经创建了xml-layout
文件,其中包含View
之类的评论框。我想在getView()
方法内多次创建动态布局(评论框)。我如何在getView()
方法中动态创建它?如何在android中的getview()方法内多次动态创建xml布局?
在这里面getview()
方法我已经使用代码动态生成特定的View
多次,但它不起作用。请给我建议。
我的适配器代码链接低于:
我已经创建了xml-layout
文件,其中包含View
之类的评论框。我想在getView()
方法内多次创建动态布局(评论框)。我如何在getView()
方法中动态创建它?如何在android中的getview()方法内多次动态创建xml布局?
在这里面getview()
方法我已经使用代码动态生成特定的View
多次,但它不起作用。请给我建议。
我的适配器代码链接低于:
我看到你三种方法。正如在评论中讨论你的问题的标题是误导性的,所以这是我认为:
因此,根本的问题是,你有一个二维数据结构,要使用一维UI组件,你的情况一个ListView显示。
你可以解决你的问题:
使用的ExpandableListView,其中卡家长和意见是子元素。参见[1]的例子。
拼合您的数据层次结构。所以你只有一个项目列表,其中的卡被视为你的评论的“标题”或“分隔符”。您需要覆盖[2],在这种情况下,您的适配器能够返回两个不同的视图。在getView()
方法然后需要做一些事情,如:
if(list.get(position) instanceOf Card) return getCardView(...); else if(list.get(position) instanceOf Comment) return getCommentView(...);
动态渲染的评论到卡视图中的容器。因此,在您的卡片视图的布局文件中,使用ViewGroup,例如一个LinearLayout并给它一个唯一的ID,如“llComments”。为您的评论有一个分离的布局文件。然后在你当前的代码中,你可以膨胀这个文件,并将返回的视图添加到容器(llComments)。我认为这是您正在寻找的解决方案。所以,在你的代码,这样做:
[1] http://www.vogella.com/tutorials/AndroidListView/article.html#expandablelistview_concept [2] http://developer.android.com/reference/android/widget/BaseAdapter.html#getViewTypeCount()
你不能创建XML代码布局...但你可以创建视图代码......无论如何,问题不清楚 – Selvin 2014-12-02 12:28:22
我在xml文件中有一个看起来像评论框的布局。 我想多次动态创建此评论框。 – Malay 2014-12-02 12:29:47
真正的程序员不使用术语:“它不工作”... – Selvin 2014-12-02 12:31:34