android - How to add an id to an arraylist -
i have simple structure of app, downloads mysql data , displays list view. code snippet shows i'm doing.
public class myactivity extends activity implements adapterview.onitemclicklistener { private static final string tag = "centractivity"; listview listview; arraylist<string> randomcentr; @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); parsejson(); arrayadapter adapter = new arrayadapter<string>(this, android.r.layout.simple_list_item_1, randomtorgcentr); listview = (listview) findviewbyid(r.id.list); listview.setadapter(adapter); listview.setchoicemode(listview.choice_mode_none); listview.setonitemclicklistener(this); } private arraylist<string> parsejson() { randomcentr = new arraylist<string>(); jsonarray centr = null; //url string url = ""; jsonparser jsonparser = new jsonparser(); jsonobject jsonobject = jsonparser.getjsonfromurl(url); log.i(tag, jsonobject.tostring()); try { torgcentr = jsonobject.getjsonarray("callback"); log.i(tag, torgcentr.tostring()); (int i=0; i<torgcentr.length(); i++) { jsonobject o = torgcentr.getjsonobject(i); string id = o.getstring("id"); string name = o.getstring("name"); randomcentr.add(i, name); log.i(tag, randomtorgcentr.get(i)); } } catch (jsonexception e) { e.printstacktrace(); } return randomtorgcentr; } @override public void onitemclick(adapterview<?> parent, view view, int position, long id) { log.i(tag, randomcentr.get(position)); } } everything displaying, have problem. have tables connected 1 id. have name attribute of table in list. so, how specify each element it's id json file, make new request, based on element's id , display detailed data of element??
i suggest create model data , extend baseadapter , create collections of models mapped it. option create simple map , have index key , id value. recommend go first option.
Comments
Post a Comment