android – 自定义AutoCompleteTextView行为

前端之家收集整理的这篇文章主要介绍了android – 自定义AutoCompleteTextView行为前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
开箱即用,AutoCompleteTextView小部件似乎无法匹配列表值中间的输入字符串 – 匹配始终在开头;例如,输入“ar”匹配“阿根廷”,但不是“匈牙利”.

如何搜索单词中间的文本?谁能给我一个想法?

提前致谢 !

解决方法

您需要编写自定义 Filter类并自己实现 performFiltering方法.此方法采用CharSequence参数,您可以使用该参数执行所需的任何String操作,以便从数据集生成匹配列表(在您的情况下,您可以使用String.contains而不是String.startsWith). performFiltering函数不在UI线程上运行.

然后,将匹配列表作为FilterResults对象返回,该对象包含Object值(匹配列表,可能是ArrayList)和int计数,它是匹配列表的大小.

最后,实现publishResults回调方法,该方法在工作线程生成匹配列表后返回,允许您在AutoCompleteTextView的适配器上调用notifyDataSetChanged,以便它可以显示结果.

原文链接:https://www.f2er.com/android/316297.html

猜你在找的Android相关文章