android - pass data to new activity from adapter class -
i made 1 custom listview image , text.when u click on image ll lead new activity.now want pass image , text new activity.i know putextra method can pass data don't know how can use here.. thanks in advance... here code adapter class..
note..i parsing data json
onclick method used go on activity...
public class adapter extends baseadapter { private static final string tag = "adapter"; private activity mactivity; public arraylist<data> mobjects; // /private final context context; context context; static class viewholder { static imageview icon; textview title; textview name; textview review; downloadimagetask mtask; string ab[]; // downloadimagetask1 mtask1; // imageview photo; } public adapter(activity activity, context context, arraylist<data> mobjects) { this.mactivity = (activity) activity; this.context = context; this.mobjects = mobjects; } public void setobjects(arraylist<data> mobjects) { this.mobjects = mobjects; } @override public view getview(final int position, view convertview, viewgroup parent) { data item = mobjects.get(position); view rowview = convertview; if (rowview == null) { layoutinflater inflater = mactivity.getlayoutinflater(); rowview = inflater.inflate(r.layout.item, parent, false); viewholder viewholder = new viewholder(); viewholder.icon = (imageview) rowview.findviewbyid(r.id.image); // viewholder.photo = (imageview) rowview.findviewbyid(r.id.photo); viewholder.title = (textview) rowview.findviewbyid(r.id.title); viewholder.name = (textview) rowview.findviewbyid(r.id.name); viewholder.review = (textview) rowview.findviewbyid(r.id.status); rowview.settag(viewholder); } viewholder holder = (viewholder) rowview.gettag(); holder.title.settext(item.getmtitle()); holder.name.settext(item.getmconcatinate()); holder.review.settext(item.getmreview()); holder.icon.setbackgroundresource(r.drawable.ic_ab); // holder.photo.setbackgroundresource(0); holder.mtask = new downloadimagetask(item.getmimageurl(), holder.icon); if (!holder.mtask.iscancelled()) { holder.mtask.execute(); } viewholder.icon.setonclicklistener(new onclicklistener() { @override public void onclick(view v) { log.d("parsing json data", "before user try122222"); // perform // action intent intent = new intent(v.getcontext(), largeview.class); v.getcontext().startactivity(intent); } }); // holder.mtask1 = new downloadimagetask1(item.getmimageurl1(), // holder.photo); // if (!holder.mtask1.iscancelled()) { // holder.mtask1.execute(); // } return rowview; } @override public int getcount() { return (this.mobjects.size()); } @override public object getitem(int position) { return (this.mobjects.get(position)); } @override public long getitemid(int position) { return (position); } public abslistview.recyclerlistener mrecyclerlistener = new recyclerlistener() { public void onmovedtoscrapheap(view view) { viewholder viewholder = (viewholder) view.gettag(); downloadimagetask imagetask = viewholder.mtask; // downloadimagetask1 imagetask1 = viewholder.mtask1; if (imagetask != null) { imagetask.cancel(true); } // if (imagetask1 != null) { // // imagetask1.cancel(true); // } } };
code in main activity.class
@override protected void oncreate(bundle savedinstancestate) { strictmode.threadpolicy policy = new strictmode.threadpolicy.builder() .detectall().penaltylog().build(); strictmode.setthreadpolicy(policy); super.oncreate(savedinstancestate); setcontentview(r.layout.activity_profile3); name = (textview) findviewbyid(r.id.textview1); bmimage2 = (imageview) findviewbyid(r.id.imageview1); address = (textview) findviewbyid(r.id.textview2); gender = (textview) findviewbyid(r.id.textview3); loyalitypoints = (textview) findviewbyid(r.id.textview7); followers = (textview) findviewbyid(r.id.textview8); following = (textview) findviewbyid(r.id.textview9); // list13 = new arraylist<hashmap<string, object>>(); mlistview = (listview) findviewbyid(android.r.id.list); mlistview.setclickable(true); // mlistview=(listview)findviewbyid(r.id.list); madapter = new adapter(this,c,msource ); mlistview.setadapter(madapter); log.w("parsing json data", "before item click"); mlistview.setrecyclerlistener(madapter.mrecyclerlistener); } public string getjsonfromurl(string url) { inputstream = null; string result = ""; // http post try { httpclient httpclient = new defaulthttpclient(); httppost httppost = new httppost(url); httpresponse response = httpclient.execute(httppost); httpentity entity = response.getentity(); = entity.getcontent(); } catch (exception e) { log.e("log_tag", "error in http connection " + e.tostring()); } // convert response string try { bufferedreader reader = new bufferedreader(new inputstreamreader( is, "iso-8859-1"), 8); stringbuilder sb = new stringbuilder(); string line = null; while ((line = reader.readline()) != null) { sb.append(line + "\n"); } is.close(); result = sb.tostring(); } catch (exception e) { log.e("log_tag", "error converting result " + e.tostring()); } return result; }
use way:
viewholder.icon.setonclicklistener(new onclicklistener() { @override public void onclick(view v) { log.d("parsing json data", "before user try122222"); // perform // action intent intent = new intent(context, largeview.class); intent.putextra("name", "dhaval"); context.startactivity(intent); } });
pass image in intent bad idea. pass url, image path, image name whatever have..
like:
intent intent = new intent(context, largeview.class); intent.putextra("name", "dhaval"); intent.putextra("imangeutl", "www.xyz.com/images/test.png"); context.startactivity(intent);
Comments
Post a Comment