У меня есть удаленная база данных, содержащая 6 строк.
Вот мой код, я положил его в список, так что я могу получить размер,
Но он всегда возвращался 0.Volley Запрос объекта Возврат 0
public List<Comments> getComments() {
final List<Comments> commentsData = new ArrayList<>();
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST,
showUrl, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
JSONArray jsonArray = response.getJSONArray("poi");
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
Comments current = new Comments();
current.image = "drawable://" + R.drawable.juandirection_placeholder;
current.title = jsonObject.getString("title");
current.comment = jsonObject.getString("comment");
current.date = jsonObject.getString("date");
current.rating = Integer.parseInt(jsonObject.getString("rating"));
commentsData.add(current);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
});
VolleyHelper.getInstance(getApplicationContext()).addToRequestQueue(jsonObjectRequest);
return commentsData;
}
мне нужен размер для некоторого использования.
Почему он всегда возвращает ноль?
Я даже попытался добавить счетчик ++ внутри цикла.
Но когда я получаю значение счетчика, оно все равно равно нулю.
так вот почему все, что я попробовал, возвращает ноль, потому что он работает на фоне. Один вопрос, является ли JsonObjectRequest лучшим выбором для чего-то подобного? как получить значения для базы данных? есть гораздо лучше библиотеки, чем волейбол? –
Насколько я знаю, Volley является лучшим, а также Google продвигает использование этой библиотеки. ссылка: http://developer.android.com/training/volley/index.html Кроме того, что бы вы ни использовали для вытаскивания данных из удаленной базы данных, вы должны запустить фоновое thead (я имею в виду асинхронный поток). –
Ну. У меня возникла проблема с настройкой адаптера в режиме просмотра вторсырья. Потому что сначала мне нужно, чтобы строки возвращались из базы данных. Во-вторых, мне нужны строки, потому что у меня есть recyclerview с несколькими макетами. –