私が取り組んでいるアプリケーションの1つにオートコンプリート機能を実装しようとしています。 サーバーからjson応答が返されます。私はVolleyとそれを解析しようとしました。それは動作しますが、私はautocompletetextviewとの応答を統合するのに失敗しました。AndroidでVolleyレスポンスを使用してAutoCompleteTextViewを実行できない
MainActivity.java
user_input = findViewById(R.id.autoCompleteTextView1);
ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.select_dialog_item, mylist);
String symbol_auto = String.valueOf(user_input.getText());
requestQueue = Volley.newRequestQueue(this);
//results = findViewById(R.id.jsonData);
mylist.add("india");
mylist.add("iran");
JsonArrayRequest arrayreq = new JsonArrayRequest(company_auto+symbol_auto,
new Response.Listener<JSONArray>() {
// Takes the response from the JSON request
@Override
public void onResponse(JSONArray response) {
try {
JSONObject jsonobj = response.getJSONObject(0);
data = jsonobj.getString("Name");
mylist.add(data);
Log.i("here", data);
//Toast.makeText(this, data, Toast.LENGTH_SHORT).show();
}
// Try and catch are included to handle any errors due to JSON
catch (JSONException e) {
// If an error occurs, this prints the error to the log
e.printStackTrace();
}
}
},
// The final parameter overrides the method onErrorResponse() and passes VolleyError
//as a parameter
new Response.ErrorListener() {
@Override
// Handles errors that occur due to Volley
public void onErrorResponse(VolleyError error) {
Log.e("Volley", "Error");
}
}
);
// Adds the JSON array request "arrayreq" to the request queue
requestQueue.add(arrayreq);
user_input.setThreshold(1);
user_input.setAdapter(adapter);
私は手動で "インド" と "イラン" のような文字列を追加してみてください。それは動作します、あなたは両方の提案ドロップダウン内で見ることができますが、私はサーバーから返された追加データのいずれかを見ることができません。
これは、私はこの上で、私の頭の上に破壊されている私のautocompletetextview
<AutoCompleteTextView
android:id="@+id/autoCompleteTextView1"
android:layout_width="350dp"
android:layout_height="wrap_content"
android:layout_below="@+id/stockLabel"
android:layout_centerHorizontal="true"
android:layout_marginTop="15dp"
android:completionThreshold="3"
android:ems="10"
android:text="@string/symbol" />
です。私はコンソール上で見つけることができるエラーはありません。私の頭に浮かんだことの1つは、ボレーが戻ってきていないかもしれないことです。 他のウィジェットでVolleyのレスポンスを印刷しようとすると、チャームのように機能します。どんな助けもありがとうございます。 TIA。
エラーとしてコンストラクタ "ArrayAdapter"を解決できません。 –
私はコードを更新して、もう一度やり直してください。 –