如何检查选中的复选框数量,并在单击按钮的textview中显示

时间:2017-07-19 17:30:50

标签: java android checkbox android-checkbox

我有3个复选框和文本视图,我想跟踪检查了多少复选框,并在单击按钮的textView中显示最终结果。我怎么能这样做?

3 个答案:

答案 0 :(得分:0)

假设您有一个父LinearLayout,它有三个复选框。

创建LinearLayout的参考。

LineaLayout linearLayout = (LinearLayout) findVIewById(R.id.lv);

然后,CheckBox声明你必须遍历linearlayout的ChildViews。

类似的东西,

for (int i = 0; i < linearLayout.getChildCount(); i++) {
    View v = linearLayout.getChildAt(i);
    if (v instanceof CheckBox) {
      if (((CheckBox) v).isChecked())
      // Check Checkbox
      else
      // Unchecked Checkbox
    } 
}

答案 1 :(得分:0)

要确定是否已选中var path = System.Web.VirtualPath.Create("/ABC/filename.aspx"); string key = System.Web.Compilation.BuildManager.GetCacheKeyFromVirtualPathInternal(path); ,您可以致电CheckBox。要设置myCheckbox.isChecked()的值,您可以调用TextView。要在按下myTextView.setText()时执行某些操作,您可以使用Button添加View.OnClickListener

这意味着你可以创建一个这样的程序:

myButton.setOnClickListener()

答案 2 :(得分:0)

最好的方法是使用listview:

首先创建一个ListView并创建一个自定义适配器,每个行都有一个复选框。

在适配器中有一个Set<Integer> indexes = new HashSet<Integer>()

在getView()方法中:getView(int position,View convertView,ViewGroup parent)

为复选框分配点击侦听器:

checkbox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
       @Override
       public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) 
       {
          if(isChecked){
             indexes.add(position); 
          }else{
             indexes.remove(position);
          }

       }
   }
); 

最后只需访问该集合,您将获得设置的长度,即所选复选框的数量,这些值代表所选复选框的位置。