![](/img/trans.png)
[英]How can I check if all radiogroups have a selected answer when populated by a recyclerView?
[英]How can I individually validate the selected option in multiple RadioGroups within a ListView?
我對Android開發和編程很新。 我的目標是以這種格式創建一個測驗。
每行都是一個自定義視圖,其中包含一個帶有3個RadioButtons的RadioGroup。 正如你在圖片中看到的那樣,工作正常。
這就是List的填充方式:
private void populateListView() {
ArrayAdapter<QuizQuestion> adapter = new MyListAdapter();
ListView list = (ListView) findViewById(R.id.questionsListView);
list.setAdapter(adapter);
}
private class MyListAdapter extends ArrayAdapter<QuizQuestion> {
public MyListAdapter() {
super(ShortQuiz.this, R.layout.item_view, myQuestions);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View itemView = convertView;
if (itemView == null) {
itemView = getLayoutInflater().inflate(R.layout.item_view, parent, false);
}
QuizQuestion currentQuestion = myQuestions.get(position);
ImageView imageView = (ImageView) itemView.findViewById(R.id.item_icon);
imageView.setImageResource(currentQuestion.getImageId());
//Question
TextView question = (TextView) itemView.findViewById(R.id.item_question);
question.setText(currentQuestion.getQuestion());
//Game
TextView game = (TextView) itemView.findViewById(R.id.item_game);
game.setText(currentQuestion.getGameName());
//Option A
TextView optionA = (TextView) itemView.findViewById(R.id.item_radioA);
optionA.setText(currentQuestion.getOptionA());
//Option B
TextView optionB = (TextView) itemView.findViewById(R.id.item_radioB);
optionB.setText(currentQuestion.getOptionB());
//Option C
TextView optionC = (TextView) itemView.findViewById(R.id.item_radioC);
optionC.setText(currentQuestion.getOptionC());
return itemView;
}
}
問題是我不知道如何在創建之后“訪問”(設置/獲取ids)每個RadioGroup以驗證正確或錯誤的答案,我想一次按下按鈕,如下所示:如果選擇的選項是正確的然后+1到正確的答案。
謝謝。
每行使用ViewHolder。 https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder.html
您可以引用每個行中的項目。 您可以搜索ViewHolder在實踐中如何使用的示例,但通常,持有者中的每一行都將使用setTag()存儲並使用getTag()進行檢索。 因此,您可以在以下視圖中獲取項目:
view.getTag();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.