【发布时间】:2015-07-14 20:58:19
【问题描述】:
在我的应用程序中使用SearchView。
无论如何我可以延迟调用 onQueryTextChange() 方法。就像,当用户输入一个字符序列时,他必须等待这个方法被调用。
这种等待应该不取决于输入的字符数,但在方法被点击之前需要稍作停顿。
我想暂停一下,因为当用户在搜索视图中键入内容时,将向服务器发出带有字符串的请求以请求匹配的数据,然后我将根据建议填充我的 ListView。
活动信息(如果需要):
实现SearchView.OnQueryTextListener。
MenuItem searchItem = menu.findItem(R.id.action_search);
SearchView searchView = (SearchView)MenuItemCompat.getActionView(searchItem);
searchView.setOnQueryTextListener(this);
【问题讨论】:
-
不,你为什么需要那个?
-
您可以使用 TimerTask 来延迟过滤您的列表。把过滤的代码放在定时器里面。但是我不建议延迟搜索。
-
@pskink 在用户输入 SearchView 时从服务器获取数据。不能在每次输入字符时都发出请求,而应该暂停。
-
@Skynet 请详细说明,为什么不推荐一个 TimerTask?
-
看看 Play 商店是如何做到的 - 超级快?
标签: android searchview