【问题标题】:how to send Recyclerview list to Server Using Volley如何使用 Volley 将 Recyclerview 列表发送到服务器
【发布时间】:2020-02-17 03:39:22
【问题描述】:

我创建了一个项目,其中有一个自定义警报对话框,其中包含 3 个编辑文本和一个按钮。 On button 点击​​它成功地将我的数据添加到 Recyclerview 并且它工作正常。

现在我想使用 volley Post 方法将 recyclerview 数据发布到服务器,任何人都可以帮助我我该怎么做我只需要知道如何将 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

【问题讨论】:

    标签: android android-recyclerview android-volley


    【解决方案1】:

    我想指出您的代码中存在一些问题,也许其中之一是解决您的问题。确定真正的问题很难,因为您没有提供足够的信息:

    1. 这个循环for (int i = 0; i &lt;= movieList.size(); i++) { 重复一次太频繁了。假设您的 movieList 有 3 个元素,您的循环将为 (0,1,2,3) 中的每个 i 进行迭代,但您的列表只有索引 (0,1,2),因为数组/列表以索引 0 开头。所以你应该在这里使用i &lt; movieList.size()
    2. 您确定将正确的项目添加到您的电影对象吗? movieObject.put("movie_name", "" + member_name); 使用变量 member_name ,它不会在您的循环中更新,您可能需要使用 movieList.get(i).member_name 或类似的(请提供更多信息,movieList 究竟是什么样子)。同样适用于以下两行
    3. 在您的日志中您使用movieList1,但在您的循环中您使用movieList,您确定两个列表相同吗?

    【讨论】:

    • Got Your Ans 谢谢它现在对我有用,如果我想在参数中将数据发布到我的服务器我知道如何将我的数组列表发送到服务器,但我想在对象中发送相同的数据,就像它给出的一样我的邮递员。
    • { "Movie_name": "API sadf", "Movie_add": "test", "Movie_no": "test" }, { "Movie_name": "API MEMBER3", "Movie_add": " test", "Movie_no": "teta" },这是我的邮递员视图,我想每次都将所有 3 个值保存到电影名前面的对象,大家也可以帮我解决这个问题。?
    • 您问题中的“需要类似输出”部分在开头和结尾显示“[”和“]”字符。这表示一个 JSONArray。那么我是否理解正确,您只想要三个 JSONObjects {...},{...},{...} 以便它们不包含在数组中?如果是,我认为这是不可能的,因为它不是有效的 JSON 语法。您可能可以访问您的服务器,那么为什么不更改您的服务器以接受包含您的电影的 JSONObjects 的 JSONArray?
    • 我的服务器正在接受具有多个对象的 jsonArray,我得到了您的回复,谢谢您的回复,但现在我要求我必须在该对象中发送 3 个参数,其中每 3 个电影名称,添加,否等视图。将自动生成,并且我们的数据将被存储,所以我想问如何在参数中发送我的多个对象?
    • 对不起,我仍然不确定你想要达到什么目的,你能举个具体的例子吗?
    猜你喜欢
    • 2018-02-16
    • 2014-11-06
    • 2019-06-16
    • 1970-01-01
    • 2015-10-20
    • 2015-11-18
    • 2015-04-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多