android intent - Having problems with retrieving, saving, and sending text from multiple edittext boxes -
i have been trying many different ways different tutorials, question responses, etc. , still cannot app not retrieve text multiple edittext, save object, , move new activity passing text displayed confirmation. post both attempts have written.
1st attempt package com.zombiecatandroidapp;
import java.io.fileoutputstream; import java.io.ioexception; import java.io.objectoutputstream; import android.os.bundle; import android.app.activity; import android.content.intent; import android.view.menu; import android.view.view; import android.widget.edittext; import android.widget.ratingbar; public class chefcookrateactivity extends activity implements java.io.serializable { /** * */ private static final long serialversionuid = 1l; public final static string first_name_message = "com.zombiecatandroidapp.message"; public final static string last_name_message = "com.zombiecatandroidapp.message"; public final static string company_name_chef_cook_message = "com.zombiecatandroidapp.message"; public final static string company_address_chef_cook_message = "com.zombiecatandroidapp.message"; public final static string company_city_chef_cook_message = "com.zombiecatandroidapp.message"; public final static string company_state_chef_cook_message = "com.zombiecatandroidapp.message"; public final static string company_zip_chef_cook_message = "com.zombiecatandroidapp.message"; public final static string food_rate_chef_cook_bar_message = "com.zombiecatandroidapp.message"; public final static string file_name = "c:\\users\\cassey\\appdata\\local\\development\\projectfile\\chefcookrating.ser"; chefcook person = new chefcook(); @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_chef_cook_rate); } @override public boolean oncreateoptionsmenu(menu menu) { // inflate menu; adds items action bar if present. getmenuinflater().inflate(r.menu.chef_cook_rate, menu); return true; } public void startsubmitdisplay(view view) { intent intent = new intent(this, displayinfoactivity.class); final edittext edittext = (edittext) findviewbyid(r.id.first_name); string firstname = edittext.gettext().tostring(); final edittext edittext1 = (edittext) findviewbyid(r.id.last_name); string lastname = edittext1.gettext().tostring(); final edittext edittext2 = (edittext) findviewbyid(r.id.company_name_chef_cook); string companynamechefcook = edittext2.gettext().tostring(); final edittext edittext3 = (edittext) findviewbyid(r.id.company_address_chef_cook); string companyaddresschefcook = edittext3.gettext().tostring(); final edittext edittext4 = (edittext) findviewbyid(r.id.company_city_chef_cook); string companycitychefcook = edittext4.gettext().tostring(); final edittext edittext5 = (edittext) findviewbyid(r.id.company_state_chef_cook); string companystatechefcook = edittext5.gettext().tostring(); final edittext edittext6 = (edittext) findviewbyid(r.id.company_zip_chef_cook); string companyzipchefcook = edittext6.gettext().tostring(); int companyzipchefcookconvert = integer.parseint(companyzipchefcook); ratingbar ratingbar = (ratingbar) findviewbyid(r.id.food_rate_chef_cook_bar); string foodratechefcookbar = string.valueof(ratingbar.getrating()); int foodratechefcookbarconvert = integer.parseint(foodratechefcookbar); person.setfirstname(firstname); person.setlastname(lastname); person.setcompanyname(companynamechefcook); person.setcompanyaddress(companyaddresschefcook); person.setcompanycity(companycitychefcook); person.setcompanystate(companystatechefcook); person.setcompanyzip(companyzipchefcookconvert); person.setrating(firstname, lastname, foodratechefcookbarconvert, 1); savechefcook(person); startactivity(intent); } public void savechefcook(chefcook person) { try{ // serialize data object file objectoutputstream fileout = new objectoutputstream(new fileoutputstream("file_name")); fileout.writeobject(person); fileout.close(); } catch (ioexception e) { } } } with next activity looking this. package com.zombiecatandroidapp;
import android.os.bundle; import android.app.activity; import android.view.menu; import android.widget.textview; import android.content.intent; public class displayinfoactivity extends activity { textview textview3 = null; textview textview4 = null; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); //setcontentview(r.layout.activity_display_info); intent intent = getintent(); string message = intent.getstringextra(chefcookrateactivity.first_name_message); message += intent.getstringextra(chefcookrateactivity.last_name_message); string message2 = intent.getstringextra(chefcookrateactivity.company_name_chef_cook_message); string message3 = intent.getstringextra(chefcookrateactivity.company_address_chef_cook_message); string message4 = intent.getstringextra(chefcookrateactivity.company_city_chef_cook_message); message4 += intent.getstringextra(chefcookrateactivity.company_state_chef_cook_message); message4 += intent.getstringextra(chefcookrateactivity.company_zip_chef_cook_message); string message5 = intent.getstringextra(chefcookrateactivity.food_rate_chef_cook_bar_message); // create text view textview textview = new textview(this); textview.settext(message); textview textview2 = new textview(this); textview.settext(message2); textview textview3 = new textview(this); textview.settext(message3); textview textview4 = new textview(this); textview.settext(message4); textview textview5 = new textview(this); textview.settext(message5); // set text view activity layout setcontentview(textview); if(textview2 != null) { setcontentview(textview2); } if(textview3 != null) { setcontentview(textview3); } if(textview4 != null) { setcontentview(textview4); } setcontentview(textview5); } @override public boolean oncreateoptionsmenu(menu menu) { // inflate menu; adds items action bar if present. getmenuinflater().inflate(r.menu.display_info, menu); return true; } } and 2nd attempt this. package com.zombiecatandroidapp;
import java.io.fileoutputstream; import java.io.ioexception; import java.io.objectoutputstream; import android.os.bundle; import android.app.activity; import android.content.intent; import android.view.keyevent; import android.view.menu; import android.view.view; import android.view.view.onkeylistener; import android.widget.edittext; import android.widget.ratingbar; public class chefcookrateactivity extends activity implements java.io.serializable { /** * */ private static final long serialversionuid = 1l; public final static string file_name = "c:\\users\\cassey\\appdata\\local\\development\\projectfile\\chefcookrating.ser"; // edit text component final edittext edittext = (edittext) findviewbyid(r.id.first_name); final edittext edittext1 = (edittext) findviewbyid(r.id.last_name); final edittext edittext2 = (edittext) findviewbyid(r.id.company_name_chef_cook); final edittext edittext3 = (edittext) findviewbyid(r.id.company_address_chef_cook); final edittext edittext4 = (edittext) findviewbyid(r.id.company_city_chef_cook); final edittext edittext5 = (edittext) findviewbyid(r.id.company_state_chef_cook); final edittext edittext6 = (edittext) findviewbyid(r.id.company_zip_chef_cook); final ratingbar ratingbar = (ratingbar) findviewbyid(r.id.food_rate_chef_cook_bar); public string firstname; public string lastname; public string companynamechefcook; public string companyaddresschefcook; public string companycitychefcook; public string companystatechefcook; public int companyzipchefcookconvert; private string foodratechefcookbar; int foodratechefcookbarconvert = integer.parseint(foodratechefcookbar); chefcook person = new chefcook(); @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_chef_cook_rate); addkeylistener(); person.setfirstname(firstname); person.setlastname(lastname); person.setcompanyname(companynamechefcook); person.setcompanyaddress(companyaddresschefcook); person.setcompanycity(companycitychefcook); person.setcompanystate(companystatechefcook); person.setcompanyzip(companyzipchefcookconvert); person.setrating(firstname, lastname, foodratechefcookbarconvert, 1); savechefcook(person); } @override public boolean oncreateoptionsmenu(menu menu) { // inflate menu; adds items action bar if present. getmenuinflater().inflate(r.menu.chef_cook_rate, menu); return true; } public void addkeylistener() { // add keylistener keep track of user input edittext.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext.gettext().tostring(); firstname = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext1.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext1.gettext().tostring(); lastname = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext2.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext2.gettext().tostring(); companynamechefcook = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext3.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext3.gettext().tostring(); companyaddresschefcook = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext4.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext4.gettext().tostring(); companycitychefcook = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext5.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext5.gettext().tostring(); companystatechefcook = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext6.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext6.gettext().tostring(); string companyzipchefcook = edittext6.gettext().tostring(); companyzipchefcookconvert = integer.parseint(companyzipchefcook); return true; } else { return false; } } }); ratingbar.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { foodratechefcookbar = string.valueof(ratingbar.getrating()); return true; } else { return false; } } }); } public void startsubmitdisplay(view view) { intent intent = new intent(this, displayinfoactivity.class); startactivity(intent); } public void savechefcook(chefcook person) { try{ // serialize data object file objectoutputstream fileout = new objectoutputstream(new fileoutputstream("file_name")); fileout.writeobject(person); fileout.close(); } catch (ioexception e) { } } } the display activity 1 haven't written yet because when try @ least long activity emulator crashes activity thread errors. source not found.
3rd attempt looks package com.zombiecatandroidapp; import java.io.fileoutputstream; import java.io.ioexception; import java.io.objectoutputstream; import android.os.bundle; import android.app.activity; import android.content.intent; import android.view.keyevent; import android.view.menu; import android.view.view; import android.view.view.onkeylistener; import android.widget.edittext; import android.widget.ratingbar; public class chefcookrateactivity extends activity implements java.io.serializable { /** * */ private static final long serialversionuid = 1l; public final static string file_name = "c:\\users\\cassey\\appdata\\local\\development\\projectfile\\chefcookrating.ser"; // edit text component final edittext edittext = (edittext) findviewbyid(r.id.first_name); final edittext edittext1 = (edittext) findviewbyid(r.id.last_name); final edittext edittext2 = (edittext) findviewbyid(r.id.company_name_chef_cook); final edittext edittext3 = (edittext) findviewbyid(r.id.company_address_chef_cook); final edittext edittext4 = (edittext) findviewbyid(r.id.company_city_chef_cook); final edittext edittext5 = (edittext) findviewbyid(r.id.company_state_chef_cook); final edittext edittext6 = (edittext) findviewbyid(r.id.company_zip_chef_cook); final ratingbar ratingbar = (ratingbar) findviewbyid(r.id.food_rate_chef_cook_bar); public string firstname; public string lastname; public string companynamechefcook; public string companyaddresschefcook; public string companycitychefcook; public string companystatechefcook; public int companyzipchefcookconvert; private string foodratechefcookbar; int foodratechefcookbarconvert = integer.parseint(foodratechefcookbar); chefcook person = new chefcook(); @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_chef_cook_rate); } @override public boolean oncreateoptionsmenu(menu menu) { // inflate menu; adds items action bar if present. getmenuinflater().inflate(r.menu.chef_cook_rate, menu); return true; } public void addkeylistener() { // add keylistener keep track of user input edittext.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext.gettext().tostring(); firstname = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext1.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext1.gettext().tostring(); lastname = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext2.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext2.gettext().tostring(); companynamechefcook = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext3.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext3.gettext().tostring(); companyaddresschefcook = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext4.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext4.gettext().tostring(); companycitychefcook = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext5.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext5.gettext().tostring(); companystatechefcook = edittext.gettext().tostring(); return true; } else { return false; } } }); edittext6.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { edittext6.gettext().tostring(); string companyzipchefcook = edittext6.gettext().tostring(); companyzipchefcookconvert = integer.parseint(companyzipchefcook); return true; } else { return false; } } }); ratingbar.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { foodratechefcookbar = string.valueof(ratingbar.getrating()); return true; } else { return false; } } }); } public void startsubmitdisplay(view view) { intent intent = new intent(this, displayinfoactivity.class); addkeylistener(); person.setfirstname(firstname); person.setlastname(lastname); person.setcompanyname(companynamechefcook); person.setcompanyaddress(companyaddresschefcook); person.setcompanycity(companycitychefcook); person.setcompanystate(companystatechefcook); person.setcompanyzip(companyzipchefcookconvert); person.setrating(firstname, lastname, foodratechefcookbarconvert, 1); savechefcook(person); startactivity(intent); } public void savechefcook(chefcook person) { try{ // serialize data object file objectoutputstream fileout = new objectoutputstream(new fileoutputstream("file_name")); fileout.writeobject(person); fileout.close(); } catch (ioexception e) { } } } again, display activity 1 haven't written yet because when try @ least long activity emulator crashes activity thread errors. source not found.
i tried 4th version looks this.
package com.zombiecatandroidapp; import java.io.fileoutputstream; import java.io.ioexception; import java.io.objectoutputstream; import android.os.bundle; import android.app.activity; import android.content.intent; import android.view.keyevent; import android.view.menu; import android.view.view; import android.view.view.onfocuschangelistener; import android.view.view.onkeylistener; import android.widget.edittext; import android.widget.ratingbar; public class chefcookrateactivity extends activity implements java.io.serializable { /** * */ private static final long serialversionuid = 1l; public final static string file_name = "c:\\users\\cassey\\appdata\\local\\development\\projectfile\\chefcookrating.ser"; // edit text component final edittext edittext = (edittext) findviewbyid(r.id.first_name); final edittext edittext1 = (edittext) findviewbyid(r.id.last_name); final edittext edittext2 = (edittext) findviewbyid(r.id.company_name_chef_cook); final edittext edittext3 = (edittext) findviewbyid(r.id.company_address_chef_cook); final edittext edittext4 = (edittext) findviewbyid(r.id.company_city_chef_cook); final edittext edittext5 = (edittext) findviewbyid(r.id.company_state_chef_cook); final edittext edittext6 = (edittext) findviewbyid(r.id.company_zip_chef_cook); final ratingbar ratingbar = (ratingbar) findviewbyid(r.id.food_rate_chef_cook_bar); public string firstname; public string lastname; public string companynamechefcook; public string companyaddresschefcook; public string companycitychefcook; public string companystatechefcook; public int companyzipchefcookconvert; private string foodratechefcookbar; int foodratechefcookbarconvert = integer.parseint(foodratechefcookbar); chefcook person = new chefcook(); @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_chef_cook_rate); addonfocuschangelistener(); } @override public boolean oncreateoptionsmenu(menu menu) { // inflate menu; adds items action bar if present. getmenuinflater().inflate(r.menu.chef_cook_rate, menu); return true; } public void startsubmitdisplay(view view) { intent intent = new intent(this, displayinfoactivity.class); person.setfirstname(firstname); person.setlastname(lastname); person.setcompanyname(companynamechefcook); person.setcompanyaddress(companyaddresschefcook); person.setcompanycity(companycitychefcook); person.setcompanystate(companystatechefcook); person.setcompanyzip(companyzipchefcookconvert); person.setrating(firstname, lastname, foodratechefcookbarconvert, 1); savechefcook(person); startactivity(intent); } public void savechefcook(chefcook person) { try{ // serialize data object file objectoutputstream fileout = new objectoutputstream(new fileoutputstream("file_name")); fileout.writeobject(person); fileout.close(); } catch (ioexception e) { } } public void addonfocuschangelistener() { // add focuslistener keep track of user input edittext.setonfocuschangelistener(new onfocuschangelistener() { @override public void onfocuschange(view v, boolean hasfocus) { if(hasfocus) { edittext.gettext().tostring(); firstname = edittext.gettext().tostring(); } } }); edittext1.setonfocuschangelistener(new onfocuschangelistener() { @override public void onfocuschange(view v, boolean hasfocus) { if(hasfocus) { edittext1.gettext().tostring(); lastname = edittext.gettext().tostring(); } } }); edittext2.setonfocuschangelistener(new onfocuschangelistener() { @override public void onfocuschange(view v, boolean hasfocus) { if(hasfocus) { edittext2.gettext().tostring(); companynamechefcook = edittext.gettext().tostring(); } } }); edittext3.setonfocuschangelistener(new onfocuschangelistener() { @override public void onfocuschange(view v, boolean hasfocus) { if(hasfocus) { edittext3.gettext().tostring(); companyaddresschefcook = edittext.gettext().tostring(); } } }); edittext4.setonfocuschangelistener(new onfocuschangelistener() { @override public void onfocuschange(view v, boolean hasfocus) { if(hasfocus) { edittext4.gettext().tostring(); companycitychefcook = edittext.gettext().tostring(); } } }); edittext5.setonfocuschangelistener(new onfocuschangelistener() { @override public void onfocuschange(view v, boolean hasfocus) { if(hasfocus) { edittext5.gettext().tostring(); companystatechefcook = edittext.gettext().tostring(); } } }); edittext6.setonfocuschangelistener(new onfocuschangelistener() { @override public void onfocuschange(view v, boolean hasfocus) { if(hasfocus) { edittext6.gettext().tostring(); string companyzipchefcook = edittext.gettext().tostring(); companyzipchefcookconvert = integer.parseint(companyzipchefcook); } } }); ratingbar.setonkeylistener(new onkeylistener() { public boolean onkey(view v, int keycode, keyevent event) { // if keydown , enter pressed if(event.getaction() == keyevent.action_down) { foodratechefcookbar = string.valueof(ratingbar.getrating()); return true; } else { return false; } } }); } } again stops emulator.
can please help?
i don't understand exact problem is, whatever do, don't try serialize entire activity.
i instead make person serializable, , provide in intent second activity. e.g.:
intent.putserializable(extra_person, person); startactivity(intent);
Comments
Post a Comment