1

我需要找到一种方法来检索使用下面列出的代码创建的复选框的选中状态:

for (int i = 0; i < cnt; i++) {
                    cb = new CheckBox(getApplicationContext());
                    TextView txt = new TextView(getApplicationContext());
                    final LinearLayout ll2 = new LinearLayout(
                            PollActivity.this);
                    ll2.setOrientation(LinearLayout.HORIZONTAL);
                    ll2.addView(txt);
                    ll2.addView(cb);
                    txt.setText(PersianReshape
                            .reshape(last_poll_array[i][1]));
                    txt.setTypeface(face);
                    ll.setGravity(Gravity.RIGHT);
                    ll2.setGravity(Gravity.RIGHT);
                    ll.addView(ll2);

                }
                sc.addView(ll);

任何指导将不胜感激。

4

5 回答 5

4

我认为您必须使用 for 循环来检查复选框是否被选中

cb.isChecked()==true;

并且对于每个复选框,使用整数数组保存值,例如“0”代表真,“1”代表假。

您可以将其保存为文件、SharedPrefrences 或 CoreData,以便下次运行应用程序时它会保存相同的值

于 2013-03-14T07:45:56.737 回答
2

你可以像这样检查你 ll2 的孩子:

boolean oneChecked = false;
View v = null;
for(int i=0; i<ll2.getChildCount(); i++) {
    v = ll2.getChildAt(i);
    if (v instanceof CheckBox) {
        if (((CheckBox) v).isChecked()) {
            oneChecked = true;
            break;
        }
    }
}
if (oneChecked) {
    // Do whatever you like if one CheckBox is checked
}
于 2013-03-14T07:40:58.587 回答
1

检查文件:

if (checkBox.isChecked()) {
             checkBox.setChecked(false);
         }

查看此链接:https ://developer.android.com/reference/android/widget/CheckBox.html

于 2017-08-10T06:20:09.997 回答
0

此代码使您能够存储复选框的 ID。我开发了迈克尔施密特的代码。非常感谢,迈克尔!!

ArrayList<Integer> check = new ArrayList<Integer>();

for(int k=0;k<ll.getChildCount();k++){
            View v = ll.getChildAt(k);
            if(v instanceof CheckBox){
                if(((CheckBox)v).isChecked()){
                    check.add(ll.getChildAt(k).getId());
                }
            }
        }
于 2015-07-27T09:24:39.170 回答
0

尝试这个:

 if(chckbxcuger.isSelected())rezultatas.setText("cuger");
    if(chckbxmilk.isSelected())rezultatas.setText("milk"); 
    if(chckbxCukrus.isSelected()&&chckbxPienas.isSelected())rezultatas.setText("cuger and milk");
于 2016-12-01T07:41:07.103 回答