JSON to ListView in Android with Gson -


i'm trying put json result in listview in android app.

this json:

[     {         "result": "8:30,21",         "meeting": "antwerp olympics",         "event": "3000m",         "date": "30/05/2013"     },     {         "result": "008,32",         "meeting": "antwerp olympics",         "event": "long jump",         "date": "30/05/2013"     },     {         "result": "6,35",         "meeting": "antwerp olympics",         "event": "high jump",         "date": "30/05/2013"     },     {         "result": "5,00",         "meeting": "antwerp olympics",         "event": "discus throw",         "date": "30/05/2013"     } ] 

this android code

gson gson = new gson(); result[] res = gson.fromjson(results, result[].class); listview lv1 = (listview) getview().findviewbyid(r.id.samplelistview); string[] values = new string[] { }; //values arrayadapter<string> files = new arrayadapter<string>(getactivity(),android.r.layout.list_content, values); lv1.setadapter(files); 

getting json result gson works, did simple json. don't know how implement json result in listview. how should populate string[] values?

thanks in advance

create class named evententity or choise

import com.google.gson.annotations.serializedname;  public class evententity{      @serializedname("result")     public int result;      @serializedname("meeting")     public string meeting;      @serializedname("event")     public string event;      @serializedname("date")     public string date;      public evententity()     {} } 

and change listview databind codes this

listview lv1 = (listview) getview().findviewbyid(r.id.samplelistview); gson gson = new gson(); list<evententity> events = (list<evententity>) gson.fromjson(results, new typetoken<evententity>>() {}.gettype()); arrayadapter<evententity> files = new arrayadapter<evententity>(..........); lv1.setadapter(files); 

edit, should create custom adapter class , row layout

public class mycustomadapter extends arrayadapter<evententity> {    private final list<evententity> list;   private final activity context;    public mycustomadapter (activity context, list<evententity> list) {     super(context, r.layout.rowlayout, list);     this.context = context;     this.list = list;   }    static class viewholder {     protected textview eventtitle;     protected textview eventdate;   }    @override   public view getview(int position, view convertview, viewgroup parent) {     view view = null;        layoutinflater inflator = context.getlayoutinflater();       view = inflator.inflate(r.layout.rowlayout, null);       final viewholder viewholder = new viewholder();       viewholder.eventtitle = (textview) view.findviewbyid(r.id.label);       viewholder.eventdate = (textview) view.findviewbyid(r.id.date);        view.settag(viewholder);       viewholder holder = (viewholder) view.gettag();      holder.eventtitle.settext(list.get(position).event);      holder.eventdate.settext(list.get(position).date);       return view; }  

Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -