RESTfulなWebサービスからリストを取得することで、AutoCompleteTextviewの提案を定期的に変更し、スムーズに動作させることはできません。私は働いていることを確認するための提案のハードコーディングされたリストを設定します。AutoCompleteTextViewアダプタを動的に更新する
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.list_item, new String[] {"Hi", "Ho"});
speciesName.setAdapter(adapter);//my autocomplete tv
は私がのTextViewに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サービスをコンテンツプロバイダとして登録する方法が見当たりませんでした。 (これは、XXは自分のアプリケーションから入力されたフォームhttp://www.blah.com/query?term=XX、のだ、と応答は、文字列のJSON配列である。)
私は似たようなことをしています! http://stackoverflow.com/questions/12854336/autocompletetextview-backed-by-cursorloader – toobsco42