【发布时间】:2011-02-10 08:26:25
【问题描述】:
我是 Android 开发新手,遇到了一个我觉得很难解决的问题。我试图弄清楚如何正确使用AutoCompleteTextView 小部件。我想使用来自 Web 服务的 XML 数据创建一个AutoCompleteTextView。我设法让它工作,但我肯定对输出不满意。
我想将带有 id => 名称对的 HashMap 放入 AutoCompleteTextView 并获取单击项目的 id。当我点击自动完成过滤集输出时,我想在自动完成框下方填充一个列表,我也设法开始工作。
到目前为止完成:
- 自动补全适用于简单的 ArrayList,所有数据过滤正确
- onItemClick 事件在单击后正确触发
- parent.getItemAtPosition(position) 返回被点击项目的正确字符串表示
事件 onItemClick(AdapterView parent, View v, int position, long id) 的行为不像我想要的那样。如何找出单击项目的未过滤数组位置?过滤后的位置是我不感兴趣的。
其他问题:
- 如何在 AutoCompleteTextView 中处理 HashMap 或集合
- 如何在onItemClick事件中获取正确的itemId
我对这个问题进行了非常广泛的研究,但没有找到任何有价值的信息来回答我的问题。
【问题讨论】:
-
您是否正在实现
Filterable,并使用Filter#performFiltering()和Filter#publishResults()方法? -
我也面临同样的问题....请朋友们给出解决方案
标签: android hashmap autocompletetextview