Я занимаюсь разработкой модельного тестового приложения, в котором у каждого теста есть 20 вопросов, и у каждого вопроса есть 4 опции радиокнопок внутри радиогруппы.
Теперь при прокрутке и выборе радиокнопки я столкнулся с автоматической проверкой радиокнопок.
Я хочу знать, почему возникает эта проблема и как ее решить.Вот мой пример кода RecylerView.`
@Override
public void onBindViewHolder(@NonNull QuizQuestionViewHolder holder, int position) {
final QuestionsWithOption questionsWithOption = questionsWithOptionList.get(position);
final List<Option> optionList = questionsWithOption.getOptions();
holder.quizQuestionTextView.setText(questionsWithOption.getTitle());
if (holder.quizOptionsRadioGroup.getChildCount() == 0) {
addRadioButtons(holder.quizOptionsRadioGroup, optionList,
questionsWithOption.getId());
}
}
private void addRadioButtons(RadioGroup quizOptionsRadioGroup,
List<Option> optionList, final int questionId) {
final RadioButton[] radioButtons = new RadioButton[optionList.size()];
for(int i = 0; i < optionList.size(); i++){
radioButtons[i] = new RadioButton(context);
radioButtons[i].setText(optionList.get(i).getName());
radioButtons[i].setTextSize(14);
radioButtons[i].setId(optionList.get(i).getId());
radioButtons[i].setTag(optionList.get(i));
radioButtons[i].setPadding(8, 8, 8, 8);
quizOptionsRadioGroup.addView(radioButtons[i]);
}
quizOptionsRadioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
RadioButton checkedRadioButton = group.findViewById(checkedId);
Option quizOptions = (Option) checkedRadioButton.getTag();
Log.d("Checked", quizOptions.getName());
}
});
}
Это скриншот моего приложения.Эти переключатели проверяются автоматически после прокрутки.Я не нажал ни одной кнопки.
`![This is the screenshot of my app. These radio buttons checks automatically after scrolling. I have not touched any button.](https://i.stack.imgur.com/AmR2L.png)