RESTful Web サービスからリストを取得して、AutoCompleteTextview によって提供される提案を定期的に変更したいのですが、スムーズに動作させることができません。ハードコーディングされた提案のリストを設定して、それが機能していることを確認します。
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.list_item, new String[] {"Hi", "Ho"});
speciesName.setAdapter(adapter);//my autocomplete tv
私はテキストビューに TextWatcher を持っていて、テキストが変更されたときにノンブロッキング呼び出しを起動して提案の新しいリストを取得します - 新しいリストを取得するこの部分は正常に機能しています。次に、次のようにアダプターをリセットします。
public void setOptionsAndUpdate(String[] options) {
Log.d(TAG, "setting options");
//speciesName.setAdapter((ArrayAdapter<String>)null);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.list_item, options);
speciesName.setAdapter(adapter);
}
このメソッドは呼び出されますが、機能しません。 を呼び出しても、提案のリストが消えるか、表示された提案が変更されないままsetAdapter
です。
これは正しいアプローチですか?SimpleCursorAdapter
Web サービスをコンテンツ プロバイダーとして登録する方法を調べましたが、わかりませんでした。(これはhttp://www.blah.com/query?term=XXの形式で、XX はアプリからの入力であり、応答は文字列の JSON 配列です。)