android - 如何使用以下 JSON 数据创建 Parcelable 类?

标签 android json parcelable parcel

每次调用api都会改变数组键,所以如何制作包裹类。

 {
        "status": 200,
        "message": "Ground Schedules",
        "data": {
            "Schedules": {
                "2017-05-04": [
                    {
                        "id": "1216",
                        "ground_id": "100",
                        "ground_court_id": "71",
                        "start_time": "02:00:00",
                        "end_time": "04:00:00",
                        "price": "100.00",
                        "is_available": "1"
                    },
                    {
                        "id": "1258",
                        "ground_id": "100",
                        "ground_court_id": "71",
                        "start_time": "02:00:00",
                        "end_time": "04:00:00",
                        "price": "100.00",
                        "is_available": "1"
                    },
                    {
                        "id": "1259",
                        "ground_id": "100",
                        "ground_court_id": "71",
                        "start_time": "04:00:00",
                        "end_time": "06:00:00",
                        "price": "100.00",
                        "is_available": "1"
                    },
                    {
                        "id": "1215",
                        "ground_id": "100",
                        "ground_court_id": "71",
                        "start_time": "24:00:00",
                        "end_time": "02:00:00",
                        "price": "100.00",
                        "is_available": "1"
                    }
                ],
                "2017-05-05": [
                    {
                        "id": "1266",
                        "ground_id": "100",
                        "ground_court_id": "71",
                        "start_time": "03:00:00",
                        "end_time": "04:00:00",
                        "price": "100.00",
                        "is_available": "1"
                    }
                ],
                "2017-05-06": [
                    {
                        "id": "1268",
                        "ground_id": "100",
                        "ground_court_id": "71",
                        "start_time": "01:00:00",
                        "end_time": "02:00:00",
                        "price": "100.00",
                        "is_available": "1"
                    },
                    {
                        "id": "1267",
                        "ground_id": "100",
                        "ground_court_id": "71",
                        "start_time": "24:00:00",
                        "end_time": "01:00:00",
                        "price": "100.00",
                        "is_available": "1"
                    }
                ]
            },
            "GroundBookedSlots": [
                {
                    "id": "1120",
                    "ground_id": "100",
                    "ground_court_id": "71",
                    "start_time": "17:00:00",
                    "end_time": "18:00:00",
                    "price": "500.00",
                    "date": "2017-04-19"
                },
                {
                    "id": "1112",
                    "ground_id": "100",
                    "ground_court_id": "71",
                    "start_time": "17:00:00",
                    "end_time": "18:00:00",
                    "price": "500.00",
                    "date": "2017-04-18"
                }
            ]
        }
    }

最佳答案

您的 Json 数组是动态的。使用 Iterator

要使用迭代器,请按照以下步骤操作 -

  1. 通过调用 集合的 iterator( ) 方法。
  2. 设置一个调用 hasNext( ) 的循环。让循环迭代 只要 hasNext( ) 返回 true。
  3. 在循环中,通过调用 next( ) 获取每个元素。

首先,获取键值

final JSONObject getJson = JsonObject.getJSONObject("Schedules");
                Iterator  iteratorObj = getJson.keys();
                ArrayList<String> al_getAllArray=new ArrayList<String>();
                while (iteratorObj.hasNext())
                {
                    String getJsonArray = (String)iteratorObj.next();
                    System.out.println("Key: " + Key + "------>" + getJsonArray );
                    al_getAllArray.add(getJsonArray);
                    .....//do your work//.......

                }

关于android - 如何使用以下 JSON 数据创建 Parcelable 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43472806/

相关文章:

json - 在 Go 中解析多个 JSON 对象

android - 如何像 Instagram 和 Vine 一样在 ListView 中播放视频?

android - 安装 Android 时出现 HTTPS SSL 错误

android - 警报对话框中的 ListView

objective-c - RestKit - POST 响应对象映射

javascript - Firebase 检索嵌套数据

android - 读取和写入整数数组到包裹

android.os.Parcelable[] 无法转换为...错误

Android Studio Wikitiude 示例错误

android - 包裹/序列化类加载器