android - 如何使用 Volley 将 Recyclerview 列表发送到服务器
问题描述
我创建了一个项目,其中有一个带有 3 个编辑文本和一个按钮的自定义警报对话框。在按钮上单击它将我的数据成功添加到 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
解决方案
我想指出您的代码中有一些问题,也许其中之一是解决您的问题。确定真正的问题很困难,因为您没有提供足够的信息:
- 这个循环
for (int i = 0; i <= movieList.size(); i++) {
过于频繁地迭代一次。假设您的 movieList 有 3 个元素,您的循环将为 (0,1,2,3) 中的每个 i 进行迭代,但您的列表只有索引 (0,1,2),因为数组/列表以索引 0 开头。所以你应该i < movieList.size()
在这里使用。 - 您确定将正确的项目添加到您的电影对象吗?
movieObject.put("movie_name", "" + member_name);
使用未在循环中更新的变量member_name,您可能需要使用movieList.get(i).member_name
或类似的(请提供更多信息,movieList 究竟是什么样的)。同样适用于以下两行 - 在您使用的日志中,
movieList1
但在您使用的循环movieList
中,您确定两个列表相同吗?
推荐阅读
- angular - 在 ngrx 中删除项目及其子项
- swift - 将 NSMutableAttributedString 应用于文本范围
- mysql - 如何填充缺失日期的数字?
- desktop - Panonlens - 图像未在桌面版本上加载
- azure - 何时使用 Azure Blob 存储与 Azure 文件共享?
- node.js - 需要代码sugg。让我的规范创建小型管理应用程序
- php - 在长结果中使用 SQL Server 数据库在 Laravel 中获取 500 错误
- svelte - 如何从组件内部调用组件的销毁?
- java - 如何在单个返回中返回布尔“if-then-else”语句
- ios - SwiftUI ZStack 对齐错误