android - Passing data between activities problems -


in project, using volley library data, , based on data adding buttons, buttons displayed correctly problem opening activity not working:

requestqueue requestqueue; textview txt; final int my_req_code = 12345;  @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_categories);      final gridlayout layout = (gridlayout) findviewbyid(r.id.layout);     requestqueue = volley.newrequestqueue(this.getapplicationcontext());      jsonobjectrequest jsonobjectrequest = new jsonobjectrequest(request.method.get, "url", null,             new response.listener<jsonobject>() {                 @override                 public void onresponse(jsonobject response) {                     try {                          jsonobject jsonanswer = response.getjsonobject("answer");                         final string[] name=new string[9];                          txt = (textview) findviewbyid(r.id.name);                          jsonarray result = jsonanswer.getjsonarray("result");                          (int i=0;i<jsonarrayresult.length();i++){                             jsonobject objresp = result.getjsonobject(i);                              string name= objresp.getstring("name");                              name[i] = name;                         }                          (int i=0;i<titles.length;i++){                             button btn = new button(getapplicationcontext());                              btn.settext(titles[i]);                              layout.addview(btn);                              btn.setonclicklistener(getproducts);                             btn.settag(titles[i]);                         }                       } catch (jsonexception e) {                         e.printstacktrace();                     }                  }             },             new response.errorlistener() {                 @override                 public void onerrorresponse(volleyerror error) {                     log.e("volley", "error");                 }             }     );      requestqueue.add(jsonobjectrequest); }  view.onclicklistener getproducts = new view.onclicklistener() {     @override     public void onclick(view v) {         object tag = v.gettag();          intent intent = new intent(getapplicationcontext(), otheractivity.class);          intent.putextra("name", tag.tostring());         startactivity(intent);     } };  @override protected void onactivityresult(int requestcode, int resultcode, intent data) {     super.onactivityresult(requestcode, resultcode, data);      if(requestcode == my_req_code) {         if (resultcode == result_ok) {             //??          } else if (resultcode == result_canceled){             toast.maketext(getapplicationcontext(), "result canceled", toast.length_short).show();         }     } } 

and second activity is:

 protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_products_list);      setresult(result_ok);     finish();      final intent intent = getintent();      final textview txt = (textview) findviewbyid(r.id.txt);      bundle title = intent.getextras();     if (title != null) {         str = title.getstring("title");     }      txt.settext(str);  } 

when moving between internal activities should use startactivity(intent) method , not startactivityforresult.

change:

startactivityforresult(intent, my_req_code); 

to:

startactivity(intent); 

update: can see create new button named btn assing listener other button. don't see create btncategorie button, should be:

button btn = new button(getapplicationcontext()); btn.settext(titles[i]); btn.setonclicklistener(getproducts); btn.settag(titles[i]); layout.addview(btn); 

Comments

Popular posts from this blog

how to insert data php javascript mysql with multiple array session 2 -

multithreading - Exception in Application constructor -

windows - CertCreateCertificateContext returns CRYPT_E_ASN1_BADTAG / 8009310b -