【问题标题】:How to declare an array of checkboxes in android如何在android中声明一个复选框数组
【发布时间】:2012-06-01 11:31:52
【问题描述】:

我已经用谷歌搜索了这个问题,但找不到一个简单或足够具体的答案: 任何有经验的程序员可以帮助我...?

我在一个名为 dialog1 的自定义对话框中有一组 10 个复选框。

public class DigitsActivity extends Activity {
...
CheckBox[] ckbDigits = new CheckBox[10];
...


public void SelectDigit1(){  // method which opens the custom dialog

Context context=DigitsActivity.this;
final Dialog dialog1 = new Dialog(context);
...
for (int k = 0; k <= 9; k++){
  ckbDigits[k] = (CheckBox) dialog1.findViewById(R.id.ckbDigits[k]);
}
...
}

我在生产线上遇到了多个错误

ckbDigits[k] = ...

我也试过了:

ckbDigits[] = (CheckBox) dialog1.findViewById(R.id.ckbDigits[]);

但它也不起作用......

谁能告诉我如何声明一个复选框数组?

谢谢。

【问题讨论】:

  • 您是如何在 XML 中声明此类复选框的?
  • 你试过checkBox的ArrayList了吗?

标签: android arrays checkbox


【解决方案1】:

声明CheckBox chk[];

那就这样吧

  chk=new CheckBox[size];
  for (int i = 0; i < size; i++) {
            chk[i] = (CheckBox) dialog.findViewById(R.id.checkBox);
            chk[i].setChecked(true);
           // whatever operations
        }

【讨论】:

    【解决方案2】:
    1. 在尝试查找视图之前,您是否调用了“setContentView”?
    2. 你初始化了 ids 数组吗?
    3. 这是什么:“R.id.ckbDigits[]”?
    4. 无论如何,我建议将 id 命名为“checkbox0”、“checkbox1”、...,然后使用 getIdentifier(如 this)找到它们,以便初始化身份证更容易。当它没有找到它所搜索的 id 时,你可以让它停止。

    【讨论】:

      【解决方案3】:

      你必须像这样声明一个新的 CheckBox 向量

      例如:

      public class Test{
         static int ckbDigits[]={id.ckbDigits0,id.ckbDigits1,id.ckbDigits2,id.ckbDigits3,
          id.ckbDigits4
          id.ckbDigits5,id.ckbDigits6,id.ckbDigits7,id.ckbDigits8,id.ckbDigits9};
      
      }
      

      在你的代码中做了这样的事情之后

      for (int k = 0; k <= 9; k++){
        ckbDigits[k] = (CheckBox) dialog1.findViewById(Test.ckbDigits[k]);
      }
      

      【讨论】:

      • 您将ckbDigits 声明为int [],然后尝试将复选框塞入其中。你确定吗?
      • 是的,这是错误的代码。 CheckBox 数组必须在映射到 id 之前声明
      猜你喜欢
      • 2021-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-02
      • 2016-09-12
      • 2019-06-23
      相关资源
      最近更新 更多