i creating app, in 1 class contains imageview , textview, contain edittext, when press button, edittext in 2nd class has store , set in textview of first class. here code.
buckmain.java
package com.jumoun.ibuck; import android.os.bundle; import android.app.activity; import android.content.intent; import android.view.view; import android.widget.imageview; import android.widget.textview; public class buckmain extends activity { imageview ivsu; textview tvname; private string ssuname; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); ivsu = (imageview) findviewbyid(r.id.ivsu); tvname = (textview) findviewbyid(r.id.tvname); ivsu.setclickable(true); ivsu.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { // todo auto-generated method stub intent intent = new intent(); intent.setclass(getapplicationcontext(), buckdisplay.class); startactivityforresult(intent, 1); } }); } @override protected void onactivityresult(int requestcode, int resultcode, intent data) { // todo auto-generated method stub super.onactivityresult(requestcode, resultcode, data); if (requestcode == 1) { if (resultcode == result_ok) { ssuname = data.getstringextra("name"); tvname.settext(ssuname); } } } }
buckdisplay.java
package com.jumoun.ibuck; import android.app.activity; import android.content.intent; import android.os.bundle; import android.widget.edittext; import android.widget.imageview; import android.widget.textview; public class buckdisplay extends activity { imageview ivsu1; textview tvdisplay; textview tvname1; edittext etname1; string sname1; private int resultcode = 1; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.buck_display); ivsu1 = (imageview) findviewbyid(r.id.ivsu1); tvdisplay = (textview) findviewbyid(r.id.tvdisplay); tvname1 = (textview) findviewbyid(r.id.tvname1); etname1 = (edittext) findviewbyid(r.id.etname1); } @override public void onbackpressed() { // todo auto-generated method stub super.onbackpressed(); sname1 = etname1.tostring(); bundle bundle = new bundle(); bundle.putstring("name", sname1); intent intent = new intent(); setresult(resultcode, intent); intent.putextras(bundle); super.onbackpressed(); } }
when press button, not showing in first class :(
you have call startactivityforresult
ivsu.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { // todo auto-generated method stub intent intent = new intent(); intent.setclass(getapplicationcontext(), buckdisplay.class); startactivityforresult(intent, 1); } });
and call super after setresult
@override public void onbackpressed() { // todo auto-generated method stub intent intent = new intent(); intent.putextra("name", etname1.gettext().tostring()); setresult(result_ok, intent); super.onbackpressed(); }
onactivityresult
@override protected void onactivityresult(int requestcode, int resultcode, intent data) { // todo auto-generated method stub super.onactivityresult(requestcode, resultcode, data); if (requestcode == 1) { if (resultcode == result_ok) { ssuname = data.getstringextra("name"); tvname.settext(ssuname); } } }
Comments
Post a Comment