Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 是否可以对AutoCompleteTextView使用两个不同的过滤器_Android_Filter_Adapter_Autocompletetextview - Fatal编程技术网

Android 是否可以对AutoCompleteTextView使用两个不同的过滤器

Android 是否可以对AutoCompleteTextView使用两个不同的过滤器,android,filter,adapter,autocompletetextview,Android,Filter,Adapter,Autocompletetextview,我正在一个小型Android应用程序的搜索栏上工作。 我遇到了这个问题,几乎一个星期都想不出来 基本的想法是当用户在我的搜索栏上输入时,我想为用户提供一些搜索建议。 这是一个标准的AutoCompleteTextView问题 但这里很复杂,因为我有两个不同的数据源要向用户推荐。 第一个数据(localData)有点快,我想在用户键入内容时直接向用户提出建议,第二个数据(remoteData)我将发送一个Internet API请求来检索数据,并将数据附加到前一个数据,并更新dropDownLis

我正在一个小型Android应用程序的搜索栏上工作。 我遇到了这个问题,几乎一个星期都想不出来

基本的想法是当用户在我的搜索栏上输入时,我想为用户提供一些搜索建议。 这是一个标准的
AutoCompleteTextView
问题

但这里很复杂,因为我有两个不同的数据源要向用户推荐。
第一个数据(localData)有点快,我想在用户键入内容时直接向用户提出建议,第二个数据(remoteData)我将发送一个Internet API请求来检索数据,并将数据附加到前一个数据,并更新dropDownList

因此,我希望有两个线程来执行过滤
并且
publishResults
将运行两次,一次用于本地,另一次用于远程请求


有人有什么建议吗?

我想,这是不可能的。您可以对结果列表进行排序,并将其绑定到ACTV


您可以做的是,在屏幕上隐藏一个不可见的容器,并在键入时显示该容器。=]然后切换回正常的文本视图。

我相信,这是不可能的。您可以对结果列表进行排序,并将其绑定到ACTV


您可以做的是,在屏幕上隐藏一个不可见的容器,并在键入时显示该容器。=]并切换回正常的文本视图。

为了实现我的目标,我在publishResults中添加了一个asynctask


当用户输入时,首先dropdownlist将立即返回本地建议,并执行异步任务。当我的API请求返回结果时,它将更新onPostExecute中的内容。为了实现我的目标,我在publishResults中添加了一个asynctask


当用户输入时,首先dropdownlist将立即返回本地建议,并执行异步任务。当我的API请求返回结果时,它将更新onPostExecute中的内容。Hi benqus,您正在谈论的不可见容器是什么?能否提供更多详细信息?谢谢。与酒店的知名度有关。XML:android:visibility=“visible”或“invisilbe”或GoneJava:relativeLayout.setVisibility(View.visible)或View.INVISIBLE或View.GONEHi benqus,您正在谈论的不可见容器是什么?您能否提供更多详细信息?谢谢。与酒店的知名度有关。XML:android:visibility=“visible”或“invisilbe”或gone JAVA:relativeLayout.setVisibility(View.visible)或View.INVISIBLE或View.gone