从ListView中的单个行检索多个值

时间:2013-10-09 13:08:23

标签: android android-listview android-arrayadapter

我有一个ListView。它的每一行都有多个项目,比如两个TextView。我也有一个自定义数组适配器。我使用getListAdapter().getItem(position)检索了第一行。但未能找回下一个。我怎样才能做到这一点 ? 请帮忙。

3 个答案:

答案 0 :(得分:0)

您可以从ListView获取光标,如:

Cursor CursorGetListItem = (Cursor)YourList.getItemAtPosition(position);

然后您可以访问ListView列,如:

CursorGetListItem.getString(CursorGetListItem.getColumnIndex(YOUR_COLUMN_NAME));
CursorGetListItem.getString(2);

答案 1 :(得分:0)

列表视图中的每一行都有一个布局

据说你做了

view = inflator.inflate(R.layout.listviewitem, null);

现在,您可以在此列表视图布局中找到每个“子项目”:

TextView tv1 = (ImageView)view.findViewById(R.id.tv1)
TextView tv2 = (ImageView)view.findViewById(R.id.tv2)

答案 2 :(得分:0)

我不知道您为什么要从textview中检索价值?但如果你在谈论edittext。

请注意,如果您的列表视图足够长,您的视图组件可能会被回收。在这种情况下,您可以做的最好的事情是自己构建下划线数据结构,并为要提取信息的每个可编辑视图添加一个侦听器。你可以参考这个答案here。你可以做一些类似于其他小部件的事情。

如果你想在listview中放置一个edittext,我的建议是不要的,因为对listview里面的edittext的关注真的很难控制(我已经试了好几天并最后切换到滚动视图)