0

私はクイズアプリケーションに取り組んでいます。質問ごとに、複数のオプションを選択する必要があります。そのために、チェックボックスを使用しました。チェックボックスをオンにすると、チェックした ID 値が arraylist に格納されます。チェックを外すと、その ID が arraylist から削除されます。また、この前に、arraylist の各質問の回答数を追加し、次のボタンをクリックして、質問を区別するために「|」(または) 記号を追加しています。

たとえば、3 つの質問が表示されます。

ここに画像の説明を入力

最初の質問では 3 つのオプションを選択し、2 番目の質問では 4 つのオプションを選択し、3 番目の質問ではどのオプションも選択しませんでした。したがって、3 番目の質問では、正解の数と | 記号が表示されます。しかし、チェックボックスが選択されていない場合、私の問題は 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

私はあなたが他のボタンをクリックするだけで文字列を作成していると仮定しています。そこであなたは最終的にあなたの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 に答える
1

次に、次の質問に進む前に、配列リストを確認してください。

 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 に答える