radio group - How to get values from dynamic radiogroup android? -
hi created dynamic radiogroup radiobutton.now want values dynamic radiogroup. below code
final radiogroup rg = new radiogroup(this); rg.setid(questionno); radiobutton[] rb = new radiobutton[answers.length()]; (int = 0; < answers.length(); i++) { jsonobject answerobject = answers.getjsonobject(i); rb[i] = new radiobutton(this); rb[i].settext(answerobject.getstring("answervalue")); rb[i].setid(answerobject.getint("answerid")); rg.addview(rb[i]); } rg.setoncheckedchangelistener(new radiogroup.oncheckedchangelistener() { @override public void oncheckedchanged(radiogroup arg0, int arg1) { int selectedid = rg.getcheckedradiobuttonid(); log.i("id", string.valueof(selectedid)); } }); button click event
submit_button.setonclicklistener(new onclicklistener() { @override public void onclick(view v) { // todo auto-generated method stub if(rg.getcheckedradiobuttonid()!=-1){ int id= rg.getcheckedradiobuttonid(); view radiobutton = rg.findviewbyid(id); int radioid = rg.indexofchild(radiobutton); radiobutton btn = (radiobutton) rg.getchildat(radioid); string selection = (string) btn.gettext(); log.i("selection", selection); } } }); i getting last index of radio group.
you can achive soln way
radiogroup.setoncheckedchangelistener(new radiogroup.oncheckedchangelistener() { void oncheckedchanged(radiogroup rg, int checkedid) { for(int i=0; i<rg.getchildcount(); i++) { radiobutton btn = (radiobutton) rg.getchildat(i); if(btn.getid() == checkedid) { string text = btn.gettext(); // text return; } } } });
Comments
Post a Comment