01/10/2018, 08:59

Cách check lần lượt các radio button trong radiogroup dùng trong listview

M đang làm 1 app android thi trắc nghiệm, đề bài gồm 10 câu hỏi, mỗi câu 4 đáp án a, b, c, d. Danh sách câu hỏi được biển diễn trên 1 listView, mỗi câu hỏi được custom, cuối listView là 1 button nộp bài. Người học sẽ làm bài, sau đó nhấn button để nộp bài, m muốn hỏi làm thế nào để lưu được các đáp án ở từng câu hỏi mà người dùng đã lựa chọn (giả sử lưu vào mảng result[] ) để so sánh với đáp án có sẵn.

Custom câu hỏi:

public class mAdapter extends ArrayAdapter<CauHoi> {
    Activity context;
    int resource;
    List<CauHoi> objects;

    public mAdapter(Activity context, int resource, List<CauHoi> objects) {
        super(context, resource, objects);
        this.context = context;
        this.objects = objects;
        this.resource = resource;
    }

    @NonNull
    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {

        LayoutInflater inflater = this.context.getLayoutInflater();
        View row = inflater.inflate(this.resource, null);

        final CauHoi cauHoi = this.objects.get(position);

        RadioGroup rg = (RadioGroup) row.findViewById(R.id.btnGroup);
        TextView txtMaCauHoi = (TextView) row.findViewById(R.id.txtMaCauHoi);
        TextView txtNoiDung = (TextView) row.findViewById(R.id.txtNoiDung);
        RadioButton btnDaA = (RadioButton) row.findViewById(R.id.btnDaA);
        RadioButton btnDaB = (RadioButton) row.findViewById(R.id.btnDaB);
        RadioButton btnDaC = (RadioButton) row.findViewById(R.id.btnDaC);
        RadioButton btnDaD = (RadioButton) row.findViewById(R.id.btnDaD);

        txtMaCauHoi.setText((position + 1) + "");
        txtNoiDung.setText(cauHoi.getContent());
        btnDaA.setText(cauHoi.getOptionA());
        btnDaB.setText(cauHoi.getOptionB());
        btnDaC.setText(cauHoi.getOptionC());
        btnDaD.setText(cauHoi.getOptionD());

        return row;
    }

}

đây là đoạn code đưa danh sách câu hỏi vào listView

lvCauHoi= (ListView) findViewById(R.id.lvCauHoi);
mAdapter = new mAdapter(this, R.layout.custom_lisview, dsCauHoi);
lvCauHoi.setAdapter(cauHoiBaiTestAdapter);

btnNopBai = (Button) findViewById(R.id.btnNopBai);
btnNopBai.setOnClickListener(new View.OnClickListener() {
       @Override
       public void onClick(View v) {
           
       }
   });
Bài liên quan
0