我有一个应用程序,其中有一个 AutoCompleteTextView。在每个文本更改事件中,应用程序都会进入网络以从 Internet 检索一些内容并填充 TextView 的下拉列表。我使用 AsyncTask 来读取网页内容。但是,如果在接收和填充内容之前输入了新文本,则应用程序会挂起,直到获取旧内容为止。有没有办法解决这个问题?
我的 AsyncTask 如下,
private class GetSuggestions extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... params) {
System.out.println("Suggestions Called()");
doSearch(params[0]); // reads the web and populates the suggestions ArrayList
return null;
}
@Override
protected void onPostExecute(String result) {
System.out.println("Adapter Called() " + suggestions.size());
suggestionAdapter = new ArrayAdapter<String>(
getApplicationContext(), R.layout.list, suggestions);
searchText.setAdapter(suggestionAdapter);
}
}
谢谢!拉胡尔。