android - How to get OnCheckedChangeListener in RadioGroup -
radiogroup provide method set oncheckedchangelistener, not get. module have oncheckedchangelistener of radiogroup , wrap in listener provide tracking of behavior customer(library application). how can listener without asking user of library provide explicitly?
p.s.
i've found solution reflection.
private void trackradiogroup(radiogroup radiogroup){ radiogroup.oncheckedchangelistener listener = null; try { field field = radiogroup.getclass().getdeclaredfield("moncheckedchangelistener"); field.setaccessible(true); object value = field.get(radiogroup); if(value !=null){ listener = (radiogroup.oncheckedchangelistener)value; } } catch (nosuchfieldexception e) { e.printstacktrace(); } catch (illegalaccessexception e) { e.printstacktrace(); } radiogroup.setoncheckedchangelistener(new somecompositelistener(listener)); } thanks understanding , rates...
try this
radiogroup radiogroup = (radiogroup)findviewbyid(r.id.cancle_booking_radio_group); radiogroup.setoncheckedchangelistener(new radiogroup.oncheckedchangelistener() { @override public void oncheckedchanged(radiogroup group, int checkedid) { view radiobutton = radiogroup.findviewbyid(checkedid); int index = radiogroup.indexofchild(radiobutton); switch (index) { case 0: // perform action here break; case 1: // perform action here break; case 2: // perform action here break; case 3: // perform action here break; case 4: // perform action here break; } } });
Comments
Post a Comment