i want implements method coding,but dont know how it,can give me suggestion on how it?
below screenshot coding want use.
this coding. vieworder.java
public class vieworder extends appcompatactivity implements listview.onitemclicklistener { public static final string json_url = "http://dashberry.com/strack/mobile/vieworder.php"; private listview listview; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_view_order); listview = (listview) findviewbyid(r.id.listview); sendrequest(); } private void sendrequest(){ stringrequest stringrequest = new stringrequest(json_url, new response.listener<string>() { public void onresponse(string response) { showjson(response); } }, new response.errorlistener() { @override public void onerrorresponse(volleyerror error) { toast.maketext(vieworder.this,error.getmessage(),toast.length_long).show(); } }); requestqueue requestqueue = volley.newrequestqueue(this); requestqueue.add(stringrequest); } private void showjson(string json){ parsejson pj = new parsejson(json); pj.parsejson(); customlist cl = new customlist(this, parsejson.itemname,parsejson.origin,parsejson.destination); listview.setadapter(cl); } @override public void onitemclick(adapterview<?> parent, view view, int position, long id) { intent intent = new intent(this, itemdetail.class); //parsejson<string> map = (parsejson)parent.getitematposition(position); //hashmap<string,string> map = (hashmap)parent.getitematposition(position); // string empid = map.get(parsejson.itemname).tostring(); // intent.putextra("item_id", empid); startactivity(intent); } }
parsejson.java
public class parsejson { public static string[] itemname; public static string[] origin; public static string[] destination; public static final string json_array = "result"; public static final string key_name = "itemname"; public static final string key_origin = "origin"; public static final string key_destination = "destination"; private jsonarray users = null; private string json; public parsejson(string json){ this.json = json; } protected void parsejson(){ jsonobject jsonobject=null; try { jsonobject = new jsonobject(json); users = jsonobject.getjsonarray(json_array); itemname = new string[users.length()]; origin = new string[users.length()]; destination = new string[users.length()]; for(int i=0;i<users.length();i++){ jsonobject jo = users.getjsonobject(i); itemname[i] = jo.getstring(key_name); origin[i] = jo.getstring(key_origin); destination[i] = jo.getstring(key_destination); } } catch (jsonexception e) { e.printstacktrace(); } }
}
so want when user click item in list,it take user next activity data(itemname).
implement onitemclick like
@override public void onitemclick(adapterview<?> l, view v, int position, long id) { //start new activity via intent intent intent = new intent(); intent.setclass(this, itemdetail.class); //you can putextra position or id intent.putextra("position", position); intent.putextra("id", id); startactivity(intent); }
you should create anther activity called itemdetail can id , position add code in oncreate()
know item clicked
intent intent = getintent(); string position = intent.getstringextra("position"); string id = intent.getstringextra("id");