我正在尝试进行5个问题的测验活动,并且我正在使用Base Adapter类将单选按钮的4个答案设置为。我的问题是我不确定如何在Activity类中获取选中的单选按钮。我尝试指定一个变量来保存所选单选按钮的位置,并制作了一个方法将此变量返回给Activity类,但它仅返回0(我仅尝试将返回的变量输出为Toast而不是对整个东西来测试它。
基本适配器类
public View getView(final int position, View convertView, ViewGroup parent) {
final View v = mInflater.inflate(R.layout.template_question,null);
final RadioButton rditem = (RadioButton) v.findViewById(R.id.itemRadio);
rditem.setText(ques[ques_num][position] + "");
rditem.setChecked(position == selectedPosition);
rditem.setTag(position);
rditem.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
selectedPosition = (Integer)view.getTag();
selectedAnswer = selectedPosition;
notifyDataSetChanged();
}
});
return v;
}
我在基本适配器类上尝试过的返回方法
public int getSelectedAnswer() {
return selectedAnswer;
}
活动课
submit = (Button)findViewById(R.id.button);
submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ques_num++;
if(ques_num == ques.length - 1)
{
Intent a = new Intent(getApplicationContext(), MainActivity.class);
startActivity(a);
finish();
}
question.setText(ques[ques_num]);
ItemAdapter itemad = new ItemAdapter(getApplicationContext(), ans_set, ques_num);
LV.setAdapter(itemad);
int answ = itemad.getSelectedAnswer();
showMessage(answ + "");
}
});