java - Android: How can I keep empty EditText fields out of a randomized count? -


i working on android app has 5 edittext fields in first activity.

users can fill out of edittext fields want , after pressing button, they'll randomized answer on single textview in second activity.

for example, if user fills out 2 edittext fields, empty ones still part of random count.

also, whenever user fills out random edittext fields (an example: choicethree , choicefour), nothing gets passed second activity.

can me? thanks!

here's code:

mainactivity.java

public class mainactivity extends activity implements onclicklistener {      edittext choiceone;     edittext choicetwo;     edittext choicethree;     edittext choicefour;     edittext choicefive;     button mainbutton;      @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         setcontentview(r.layout.activity_main);          choiceone = (edittext) findviewbyid(r.id.inputone);         choicetwo = (edittext) findviewbyid(r.id.inputtwo);         choicethree = (edittext) findviewbyid(r.id.inputthree);         choicefour = (edittext) findviewbyid(r.id.inputfour);         choicefive = (edittext) findviewbyid(r.id.inputfive);          mainbutton = (button) findviewbyid(r.id.inputbutton);         mainbutton.setonclicklistener(this);         }      @override     public boolean oncreateoptionsmenu(menu menu) {         // inflate menu; adds items action bar if present.         getmenuinflater().inflate(r.menu.menu_main, menu);         return true;     }      @override     public void onclick(view view)     {          intent intent = new intent(mainactivity.this, secondactivity.class);          if(choiceone.gettext().tostring() != null && !choiceone.gettext().tostring().trim().equals(""))     {         intent.putextra("choiceone", choiceone.gettext().tostring());     }          if(choicetwo.gettext().tostring() != null && !choicetwo.gettext().tostring().trim().equals(""))     {         intent.putextra("choicetwo", choicetwo.gettext().tostring());     }          if(choicethree.gettext().tostring() != null && !choicethree.gettext().tostring().trim().equals(""))     {         intent.putextra("choicethree", choicethree.gettext().tostring());     }          if(choicefour.gettext().tostring() != null && !choicefour.gettext().tostring().trim().equals(""))     {         intent.putextra("choicefour", choicefour.gettext().tostring());     }          if(choicefive.gettext().tostring() != null && !choicefive.gettext().tostring().trim().equals(""))     {         intent.putextra("choicefive", choicefive.gettext().tostring());     }          intent.setflags(intent.flag_activity_clear_top);         startactivity(intent);         finish();       } } 

secondactivity.java

public class secondactivity extends activity {      textview answerdisplay;      @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         setcontentview(r.layout.activity_second);          answerdisplay = (textview) findviewbyid(r.id.display);           intent intent = getintent();         string[] choice = {intent.getstringextra("choiceone"), intent.getstringextra("choicetwo"),                 intent.getstringextra("choicethree"), intent.getstringextra("choicefour"),                 intent.getstringextra("choicefive")};         int choicerandom = (int) (math.random()*intent.getextras().size());          answerdisplay.settext(choice[choicerandom]);      } 

when no input there in edittext, doesnt return gettext null, "".

and in mainactivity, work arraylist instead of array.. gives option use various methods including add , remove.

string choicex = intent.getstringextra("choicex"); if(!choicex.equals("")) {          choice.add(choicex); } 

for each of choices. best , easiest way can see.. :)


Comments