gpt4 book ai didi

android - 如何在水平 ListView 中获取动态数据

转载 作者:行者123 更新时间:2023-11-29 02:37:44 25 4
gpt4 key购买 nike

我正在从 url 进行解析以将数据放入水平 ListView 它工作正常,但它只显示来自 json 对象的最后一个值。我在下面粘贴了我的 json 解析和 json。请告诉我哪里做错了。

这是我的json

 {
"status": 1,
"category": [
{
"id": 1,
"category_name_en": "car",
"category_name_ar": "car",
"description_en": "",
"description_ar": "",
"day": "monday,tuesday,wednesday,thursday,friday,saturday,sunday",
"status": "A",
"created_at": "Sep 4 2017 8:09 AM",
"updated_at": "Sep 4 2017 8:09 AM",
"sub_category": [
{
"id": 1,
"sub_category_name_en": "Audi",
"sub_category_name_ar": "Audi",
"sub_description_en": "",
"sub_description_ar": "",
"status": "A",
"created_at": "Sep 4 2017 8:10 AM",
"updated_at": "Sep 4 2017 8:10 AM"
},
{
"id": 4,
"sub_category_name_en": "New",
"sub_category_name_ar": "New",
"sub_description_en": "",
"sub_description_ar": "",
"status": "A",
"created_at": "Sep 4 2017 9:45 AM",
"updated_at": "Sep 4 2017 9:45 AM"
}
]
},
{
"id": 2,
"category_name_en": "Animal",
"category_name_ar": "Animal",
"description_en": "",
"description_ar": "",
"day": "monday,tuesday,wednesday,thursday,friday,saturday,sunday",
"status": "A",
"created_at": "Sep 4 2017 9:19 AM",
"updated_at": "Sep 4 2017 9:19 AM",
"sub_category": [
{
"id": 2,
"sub_category_name_en": "Dogs",
"sub_category_name_ar": "Dogs",
"sub_description_en": "",
"sub_description_ar": "",
"status": "A",
"created_at": "Sep 4 2017 9:20 AM",
"updated_at": "Sep 4 2017 9:20 AM"
},
{
"id": 3,
"sub_category_name_en": "Cat",
"sub_category_name_ar": "Cat",
"sub_description_en": "",
"sub_description_ar": "",
"status": "A",
"created_at": "Sep 4 2017 9:21 AM",
"updated_at": "Sep 4 2017 9:21 AM"
}
]
}
]
}

这是我的解析

这里我正在做我的解析,它返回 json 对象大小正确但它只显示最后一个值

我哪里错了。请给我建议

public static ArrayList<CardData> PaeseBanner(String response) throws JSONException {
ArrayList<CardData> alUser = new ArrayList<>();

JSONObject jsonRoot = new JSONObject(response);

JSONArray jsonArray = jsonRoot.getJSONArray("category");

CardData LT = new CardData();

for (int i = 0; i < jsonArray.length(); i++) {

JSONObject jsonObject = jsonArray.getJSONObject(i);

JSONObject jsonObject2 = null;

JSONArray jsonArray1 = jsonObject.getJSONArray("sub_category");

for (int j = 0; j < jsonArray1.length(); j++) {

jsonObject2 = jsonArray1.getJSONObject(j);

LT.setSubcategory_name(jsonObject2.getString("sub_category_name_en"));

alUser.add(LT);
}

}

return alUser;
}

这是我的短片 This is Screen Short

最佳答案

试试这个

for (int j = 0; j < jsonArray1.length(); j++) {
CardData LT = new CardData(); // Create new CardData object inside second for loop

jsonObject2 = jsonArray1.getJSONObject(j);

LT.setSubcategory_name(jsonObject2.getString("sub_category_name_en"));

alUser.add(LT);
}

关于android - 如何在水平 ListView 中获取动态数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46056929/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com