我正在开展测验应用。对于每个问题,都应选择多个选项。为此,我使用了复选框。 选中复选框时,我将已检查的id值存储在arraylist中,如果未选中,我将从arraylist中删除该ID。此前我还要添加答案数对于arraylist和下一个按钮中的每个问题,我都会添加一个“|”(或)符号来区分问题。
所以例如显示3个问题....然后我的arraylist包含
现在第一个问题我选择了3个选项,第二个问题我选择了4个选项,第三个问题我没有选择任何选项。所以对于第三个问题,只有正确答案的数量和|符号显示。 但是现在我的问题是如果没有选中任何复选框我想在arraylist中传递一个值。我怎样才能做到这一点?请帮我解决这个问题....自3天以来一直在努力....
我的代码:
cbs[k].setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (((CheckBox) v).isChecked()) {
selchkboxlist.add(Integer.toString(v
.getId()));
System.out.println("chkboxlist size"
+ selchkboxlist.size());
}
else
{
selchkboxlist.remove(Integer.toString(v
.getId()));
System.out
.println("after delete chkboxlist size"
+ selchkboxlist.size());
}
}
});
提前感恩
答案 0 :(得分:1)
然后在进入下一个问题之前检查你的arraylist ..
int k=yourlist.length();
if(Integer.parseInt(yourlist.get(k-2))<=4){
//then it is number of answers and no check box has been checked..
arraylist.set(k-1,new String("some value to indicate nothing"));
arraylist.add("|");
}
答案 1 :(得分:1)
我假设您在点击其他按钮时创建字符串,最后根据您的selchkboxlist形成您的字符串。在这种情况下,您可以做的是,在您生成此文本的时候,
if( selchkboxlist.length() <= 1 ){ //means that none of the checkboxes have been selected
//Add the entry at selchkboxlist[0]
//Add a "|"
}