【问题标题】:Android: Limit the number of choices from the list of checkboxesAndroid:限制复选框列表中的选择数量
【发布时间】:2014-05-29 13:38:48
【问题描述】:

在我的应用程序中,我有多个复选框,我必须将用户限制为 5 个选项。 之后 - 如果他从复选框中选择另一个选项,则不会被标记。

这是我的代码草图 -

Veg.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            if (Veg.isChecked()) {
                if (result.length() == 10) {
                    finalresult = result.substring(0, result.length() - 1);

                    Veg.setEnabled(false);

                } else {
                    result.append("1,");
                    System.out.println(result.length());
                }
            }

        }
    });

【问题讨论】:

  • 请多放一些代码。
  • 其他项目也重复了上述代码。

标签: java android checkbox


【解决方案1】:

为什么不使用 OnCheckChangedListener。 将所有检查的复选框ID保留在ArrayList中,每当检查复选框时,将其添加到ArrayList,当未选中删除时,将其添加到OnCheckChanged事件中,请添加ARRALIST.SIZE()的检查,如果该检查大于5,请通过setChecked(false)(false)将其添加到5个检查箱。 .

【讨论】:

  • 由于我是android新手,请把上述问题的具体代码发给我。
【解决方案2】:

所有复选框的处理相同,并使用 ArrayList 禁用和启用复选框。

下面的代码不是编程的好习惯。

Veg1.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                if (Veg1.isChecked()) 
                {
                    counter++;
                    if (counter <= 10) {
                        do your process
                        call one of the method for ENABLE all uncheck checkboxes
                    }
                    else
                    {
                        counter--
                        Veg1.setChecked(false);
                        call one of the method for DISABLE all uncheck checkboxes
                    }


                       // Veg.setEnabled(false); remove this line

                } else {
                        counter--;
                        //result.append("1,"); remove this line

                    }
                }

            }
        });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 2017-07-20
    • 2013-04-26
    • 1970-01-01
    • 2021-11-27
    • 2015-03-10
    • 1970-01-01
    相关资源
    最近更新 更多