1

我有一个自定义适配器,我根据此处ListView显示的示例进行了模制。

我想采用用户的选择并为该选择增加不同的布局。这样我就可以在选择项目时展开视图以显示更多信息。我可以使用类似的方法简单地在点击时膨胀一个新的布局吗?

protected void onListItemClick(ListView list, View v, int position, long id){
    super.onListItemClick(list, v, position, id);
        LayoutInflater inflate = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        v = inflater.inflate(R.layout.new_layout, null);

在这部分代码之后,我将填充个人TextViewImageView对象,就像我在初始列表中所做的那样,只是这次我将包含更多字段。这是正确的还是有更好的方法?

4

1 回答 1

0

这是行不通的,因为你没有对你得到的视图做任何事情。您只替换了它的引用(并且没有对新膨胀的视图做任何事情),并没有真正修改“视图树”中的任何内容。

您可以做的是从其内容中清空视图并向其中添加新内容。

不要忘记在 getView 中您必须做同样的事情并返回包含此内容的视图。

于 2013-01-10T19:46:40.073 回答