如图所示
checkbox   
页面中有个listview  里面包含了
在外部顶上有一个按钮 控制里面的删除图标(左侧打叉的一列按钮 )隐藏与显示 (修改了Adapter 里面的一个public 布尔 变量) 
然后Adapter.notifyDataSetChanged() 刷新listview  (删除按钮 )隐藏显示. 
当点击按钮时目前出现了一个问题.checkbox(右侧打钩)的选中状态出现了问题.notifyDataSetChanged 后..就是选中项不对了..求解决的代码案例..非常感谢.

解决方案 »

  1. Map<Integer, Boolean> isSelected;
    isSelected = new HashMap<Integer, Boolean>();
                for (int i = 0; i < list_food.size(); i++) {
                    isSelected.put(i, false);
                }
    getView里面{
         
    checkbox.setOnClickListener(new OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        CheckBox box = (CheckBox) v;
                        Log.i(Util.LOG, position + "---" + box.isChecked());
                        if(box.isChecked()) {
                                                   
                                Log.i(Util.LOG, "选择了:" + position);
                                isSelected.put(position, true);
                        } else {
                                isSelected.put(position, false);
                                Log.i(Util.LOG, "取消了:" + position);
                           
                        }
                });
               checkbox.setChecked(isSelected.get(position));
            
      

类似问题 »