に追加TextChangedListener
しAutocompleteTextView
ます。では、Web からデータをロードする呼び出しを呼び出します (アクティビティTextChangedListener
の開始時にすべてのデータをロードすることは、リストがかなり大きくなる可能性があるため、オプションではなく、トラフィックの無駄になります)。
はそのように見えます(私は使用します):afterTextChanged()
AsyncTask
AsyncTask
onPostExecute()
ArrayAdapter
@Override
protected void onPostExecute(ArrayList<Subregion> result)
{
super.onPostExecute(result);
if (result != null)
{
adapter.clear();
for (Iterator<Subregion> iterator = result.iterator(); iterator.hasNext();)
{
Subregion subregion = iterator.next();
adapter.add(subregion);
}
adapter.notifyDataSetChanged();
autocompleteTextView.showDropDown();
}
}
Subregion
overriden を持つ私のカスタムオブジェクトtoString()
です。ユーザーが入力を開始したときにプログラムがデータの読み込みを開始し、結果が受信されて解析されるとすぐに結果を表示するようにします。
私の問題:
autocompleteTextView.showDropDown()
効果はありません。onPostExecute()
データの正しいリストを受け取り、アダプターに追加されますがshowDropDown()
、ドロップダウンは表示されません。どうしたの?