当textfilter时,Android listview获取列表项的正确位置

时间:2012-08-04 13:13:35

标签: android listview position

我对listview有疑问。我有一个启用了textfilter的列表视图。当我点击没有textfilter的listitem时,我得到了这个位置,然后我把它交给下一个根据位置显示正确文本的活动。但是当我使用文本过滤器并单击一个项目时,下一个活动会向我显示错误的文本,可能是因为列表项的位置发生了变化。有人有解决这个问题的方法,例如不使用位置而是列表项的另一个引用?我到处寻找但找不到解决方案。

提前致谢

2 个答案:

答案 0 :(得分:0)

您可以直接从listAdapter获取position的正确项目。它仅包含列表中显示的当前项目。

listAdapter .getItem(position);

参考:onItemClick gives index/ position of item on visible page ... not actual index of the item in list ..problem on enabling setTextFilterEnabled .. android

答案 1 :(得分:0)

如果position出现问题,您可以从id更改为position。过滤列表时,onClick事件中的position是过滤列表中的新位置,而不是旧位置。正常,id是输入数据中项目的顺序