2017-04-18 3 views
1

Array-Schlüssel wird jedes Mal geändert werden, wenn Sie api aufrufen, so wie Paketklasse zu machen.Wie erstellt man eine Parcelable-Klasse mit folgenden JSON-Daten?

{ 
     "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" 
       } 
      ] 
     } 
    } 

Antwort

1

Ihr Json-Array ist dynamisch. Verwenden Iterator

einen Iterator zu verwenden, gehen Sie folgendermaßen vor -

  1. Erhalten Iterator zu Beginn der Sammlung durch den Aufruf der Sammlung des Iterators() -Methode.
  2. Richten Sie eine Schleife ein, die hasNext() aufruft. Lassen Sie die Schleife iterieren, solange hasNext() den Wert true zurückgibt.
  3. Innerhalb der Schleife, erhalten Sie jedes Element durch den Aufruf von next().

Zunächst Get Key Value

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

       } 
+0

Danke, aber ich will Parcel Klasse wie folgt public class Spielplan erstellen implementiert Parcel { } – ckpatel

+0

@ckpatel Ich weiß, über '' Parcel. Darf ich wissen, warum dies für diesen Fall erforderlich ist? –

+0

Ich habe in der bestehenden Anwendung arbeiten und in dieser parcelable Klasse verwendet und so habe ich keine Ahnung – ckpatel

Verwandte Themen