0

我正在开发测验应用程序。对于每个问题,应选择多个选项。为此,我使用了复选框。当复选框被选中时,我将选中的 id 值存储在 arraylist 中,如果未选中,我将从 arraylist 中删除该 id。同样在此之前,我在数组列表中添加每个问题的答案数量,然后在下一个按钮中单击我添加一个“|”(或)符号来区分问题。

因此,例如显示 3 个问题....然后我的数组列表包含

在此处输入图像描述

现在对于第一个问题,我选择了 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());
            }

    }
}); 

将提前感谢

4

2 回答 2

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("|");

   }
于 2012-04-17T06:20:43.520 回答
1

我假设您是在单击其他按钮时创建字符串,最终您会根据您的 selchkboxlist 形成您的字符串。在这种情况下,您可以做的是,在您生成此文本时,

if( selchkboxlist.length() <= 1 ){ //means that none of the checkboxes have been selected
    //Add the entry at selchkboxlist[0]
    //Add a "|"
}
于 2012-04-17T06:30:34.287 回答