как отправить список Recyclerview на сервер используя Volley - PullRequest
0 голосов
/ 17 февраля 2020

Я создал проект, в котором у меня есть окно обычного алерта с 3 редактируемыми текстами и одна кнопка. На кнопку Нажмите, чтобы добавить мои данные в Recyclerview успешно, и он работает нормально.

Теперь я хочу опубликовать данные переработчика на сервер, используя метод залпа. Любой может помочь мне, как я могу это сделать, мне просто нужно Идея, как отправить данные Recyclerview (список моего Recyclerview) на сервер. Я хочу опубликовать полный список объектов в массиве на сервере.

что я должен отправить в мои параметры, чтобы я успешно отправил данные повторного просмотра на мой сервер.

Я достиг почти там, но я хочу, чтобы все объекты были в одном и том же ДАННЫХ СПИСКА Массива, но я получаю другой список массива с другим объектом (нужен весь объект в одном списке массива)

Требуется вывод типа

 [{
    "movie_name":"trter",
    "movies_Add":"hgjhj90",
    "movie_no":"8787878787"
    }
    {
    "movie_name":"trter",
    "movies_Add":"hgjhj90",
    "movie_no":"8787878787"
    }
    {
    "movie_name":"trter",
    "movies_Add":"hgjhj90",
    "movie_no":"8787878787"
    }
    ]

Код

 JSONArray movieArray = new JSONArray();
                for (int i = 0; i <= movieList.size(); i++) {
                    JSONObject movieObject = new JSONObject();
                    try {
                        movieObject.put("movie_name", "" + member_name);
                        movieObject.put("movies_Add", "" + member_adds);
                        movieObject.put("movie_no", "" + member_contacts);
                        movieArray.put(movieObject);
                    } catch (JSONException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                }
                String jsonStr = movieArray.toString();

                Log.i("jsonobj12", String.valueOf(movieArray));
                Log.i("jsonobj123", String.valueOf(movieList1.size()));

Данные журнала

2020-02-14 09:49:54.283 17587-17587/com.example.raid I/jsonobj12: [{"movie_name":"trter","movies_Add":"hgjhj90","movie_no":"8787878787"}]
2020-02-14 09:49:54.283 17587-17587/com.example.raid I/jsonobj123: 1
2020-02-14 09:50:03.381 17587-17587/com.example.raid I/jsonobj12: [{"movie_name":"tertre","movies_Add":"hgvjnbk99090","movie_no":"7687687868"}]
2020-02-14 09:50:03.381 17587-17587/com.example.raid I/jsonobj123: 2

1 Ответ

2 голосов
/ 17 февраля 2020

В вашем коде есть несколько проблем, на которые я хочу обратить внимание, возможно, одна из них - это исправление вашей проблемы. Трудно определить реальную проблему, потому что вы не предоставили достаточно информации:

  1. Эта l oop for (int i = 0; i <= movieList.size(); i++) { повторяется слишком часто. Допустим, у вашего movieList есть 3 элемента, ваш l oop будет повторяться для каждого i в (0,1,2,3), но ваш список имеет только индексы (0,1,2), так как массивы / списки начинаются с индекса 0 Таким образом, вы должны использовать i < movieList.size() здесь.
  2. Вы уверены, что добавляете нужные элементы в свой movieObject? movieObject.put("movie_name", "" + member_name); использует переменную member_name , которая не обновляется в вашем l oop, вам, вероятно, нужно использовать movieList.get(i).member_name или подобное (пожалуйста, предоставьте больше информации, как именно выглядит movieList). То же самое относится к следующим двум строкам
  3. В вашем журнале вы используете movieList1, но в вашем l oop вы используете movieList Вы уверены, что оба списка одинаковы?
...