android開發中RadioGroup動態新增元件的時候checkedId自動累加的解決方案
阿新 • • 發佈:2019-01-31
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { RadioButton radioButton=findViewById(group.getCheckedRadioButtonId()); String answer=radioButton.getText().toString().substring(0,1); listUserAnswerRecordDatas.get(currentQuestionId-1).set_t_useranswer(answer); //Toast.makeText(PractiseActivity.this,"您選擇了:"+radioButton.getText().toString(),Toast.LENGTH_SHORT).show(); } });
問題:向一個RadioGroup中動態的新增一批RadioButton之後,即使進行了removeallviews()方法,這個checkedId仍然是在不斷的累加,這樣導致了沒法獲取正確的RadioButton。
解決方案:可以採用RadioGroup的getCheckedRadioButtonId( )方法來獲取被選中的RadioButton。