在Android中隐藏并显示复选框问题 [英] Hide and show checkbox issue in android

查看:1781
本文介绍了在Android中隐藏并显示复选框问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在 ListView 中有复选框可选择项目,我有一个按钮 ListView 之外。最初,当我点击按钮 复选框时,复选框 $ c>应显示在 ListView 中,反之亦然。我有一个问题,当我按下按钮最初它显示一个

I have a Checkbox in a ListView to select items and I have one Button outside the ListView. Initially the Checkbox should be hidden, when I click that Button the Checkbox should display in the ListView and vice versa.

注意: code>

Note: I have a Button in class and Checkbox in adapter         
sdel.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {

            ((datalist) mlistView.getAdapter()). toggleChecks();
            ((datalist)mlistView.getAdapter()).notifyDataSetChanged();
    }

});    





public void toggleChecks() { 

   for (int i = 0;i<sms.size();i++) {
        holder.cb.setVisibility(CheckBox.VISIBLE);
   } 

   isCheckBoxVisible=!isCheckBoxVisible;
   notifyDataSetChanged();
}


推荐答案

b $ b in which define getter setter for boolean variable

Create model for this purpose in that define getter setter for boolean variable

private  boolean isVisible;

public boolean isVisible() {
    return isVisible;
}

public void setVisible(boolean visible) {
    isVisible = visible;
}

在默认情况下将此标记设置为false

in activty set this flag as false by default

YourModel model=new YouModel();
 for (int i = 0; i <sms ; i++) {

        model.setVisible(false);
    }

在适配器写入条件复选框
//假设sms是arraylist

In adapter write condition for check box //assuming sms is arraylist

YourModel model=sms.get(position)
if(model.isVisible){
checkbox.setVisibility(View.VISIBLE);
}else{
checkbox.setVisibility(View.INVISIBLE);
}

现在在按钮上点击写下面的代码
//如果可见

now on button click write below code //if checkbox is visible

  for (int i = 0; i <sms.size() ; i++) {
            sms.get(i).setVisible(false);
        }
adapter.notifyDataSetChanged();

//if checkbox is invisible
  for (int i = 0; i <sms.size() ; i++) {
            sms.get(i).setVisible(true);
        }
adapter.notifyDataSetChanged();

这篇关于在Android中隐藏并显示复选框问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆