0

我在运行时动态创建了一些复选框,现在我想知道其中一个是否被选中。我怎么能这样做?

for (int i = 0; i < cnt; i++) {
                    cb = new CheckBox(getApplicationContext());
                    TextView txt = new TextView(getApplicationContext());
                    ll2 = new LinearLayout(
                            PollActivity.this);
                    ll2.setOrientation(LinearLayout.HORIZONTAL);

                    ll2.addView(cb);

                    ll.addView(ll2);

                }
4

3 回答 3

1

您需要为 CheckBox 设置CompoundButton.OnCheckedChangeListener 以在单击复选框时触发事件。例子 :

cb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

   @Override
   public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {

      // do your code here
   }
});
于 2013-03-14T09:02:51.550 回答
1

我建议您为每个CheckBox设置OnCheckedChangeListener设置(循环) 。

cb.setOnCheckedChangeListener(new OnCheckedChangeListener() {
   public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
      if (isChecked) {
         // do some action
      }     
   }
});

现在您可以处理每个 CheckBox 的事件。

于 2013-03-14T09:03:07.207 回答
0

只需检查返回布尔值的 cb.isChecked() 即可。

于 2013-03-14T09:05:17.090 回答