2017-09-30 3 views
0

J'ai un tableau JSON imbriqué que je veux décoder. J'ai déjà trouvé un moyen de décoder une information spécifique dans l'objet mais ça ne marche pas très bien.Décoder un tableau JSON imbriqué dans Android

C'est le code que j'utilisé pour décoder (nom, couverture et de la rue) de l'objet JSON:

JSONArray jsonArray = response.getJSONArray("data"); 

for (int i=0; i < jsonArray.length();i++){ 
    JSONObject events = jsonArray.getJSONObject(i); 
    String name = events.getString("name"); 
    JSONObject cover = events.getJSONObject("cover"); 
    String imgurl = cover.getString("source"); 
    JSONObject place = events.getJSONObject("place"); 
    JSONObject loc = place.getJSONObject("location"); 
    String street = loc.getString("street"); 

    ItemListView item = new ItemListView(name,street,imgurl); 
    listItems.add(item); 
    adapter = new ItemListAdapter(listItems, getActivity()); 

    recyclerView.setAdapter(adapter); 
} 

Je veux décoder plus d'informations comme la description, end_time et start_time.

La structure de données JSON ressemble à ceci:

{ 
    "data": [ 
     { 
     "description": "", 
     "end_time": "", 
     "name": "", 
     "place": { 
      "name": "", 
      "location": { 
       "city": "", 
       "country": "", 
       "latitude": 0000000, 
       "longitude": 000000, 
       "street": "" 
      }, 
      "id": "" 
     }, 
     "start_time": "", 
     "id": "" 
     }, 
     { 
     "description": "", 
     "end_time": "", 
     "name": "", 
     "place": { 
      "name": "", 
      "location": { 
       "city": "", 
       "country": "", 
       "latitude": 0000000, 
       "longitude": 000000, 
       "street": "" 
      }, 
      "id": "" 
     }, 
     "start_time": "", 
     "id": "" 
     } 
    ] 
} 

je mets les informations décodées dans un ListView dans mon application Android et c'est pourquoi j'ai un adaptateur et ListView dans le code.

Toute aide est grandement appréciée :) Merci d'avance.

Répondre

0

est simple, vous pouvez obtenir d'autres cordes comme ça -:

JSONArray jsonArray = response.getJSONArray("data"); 

      for (int i=0; i < jsonArray.length();i++){ 
       JSONObject events = jsonArray.getJSONObject(i); 
       String description= events.getString("description"); 
       String end_time= events.getString("end_time"); 
       String start_time= events.getString("start_time"); 

      } 
+1

Omg, je l'ai fait si compliqué pour moi-même, Merci beaucoup: D – Yznit

+1

Bienvenue homme heureux de codage! – UltimateDevil