我有一个AutoCompleteTextView
,它很好用,直到我在输入中添加一个空格。例如,如果我列出了许多历史事件(英国战役(1940年),大爆炸战役(1944年),[插入大量战斗],拿破仑的致命游行(1812年),[插入许多其他历史事件]) 。
当我输入“Battle
”或“battle
”时,我会获得所有战斗的列表(尽管似乎有最大战斗),而当我输入“britain
”时,"Battle of Britain (1940)"
会出现在结果中。
但是,当我输入"1940"
时,列表为空,原因与输入"itain"
时没有任何匹配的原因相同。我猜空间是某种分隔符或锚点。如果我将1940
放在字符串前面(例如"1940 - Battle of Britain"
)并输入“19”,那么我会得到所有以“19”开头的结果。
即使在所搜索的单词/短语/部分的前面有一个字符,也可以使AutoCompleteTextView
自动完成吗? (因此,当我输入“1940”时,结果中将包括“不列颠之战(1940年)”?)
最佳答案
在Adapter
方法中使用实现Filterable的自定义getFilter()
。
使用String.contains()
满足您的要求