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

时间:2017-04-18 12:55:21

标签: 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"
                }
            ]
        }
    }

1 个答案:

答案 0 :(得分:2)

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

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

  1. 通过调用获取集合开头的迭代器 collection' iterator()方法。
  2. 设置一个调用hasNext()的循环。让循环迭代 只要hasNext()返回true。
  3. 在循环中,通过调用next()获取每个元素。
  4. 首先获取关键值

    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//.......
    
                    }