在android中创建复选框列表的不同方法

时间:2013-10-03 11:30:44

标签: android checkbox checkboxlist

有人可以解释制作复选框列表和保存选中选项的不同方法吗?如果你能附上例子,那就太好了。我正在使用arraylist来保存输入,还有其他方法吗?

final CharSequence[] items = {};
final ArrayList seletedItems = new ArrayList();

2 个答案:

答案 0 :(得分:0)

您可以为对象创建自定义类,例如

public class entity
{
  public boolean isChecked;
  //Any other variables can also be created
}

在复选框选择中更改

的值
entityobj[index].isChecked=true/false;

应用自定义列表适配器, 在适配器getview()方法中,您可以检查isChecked值,然后选中或取消选中相应的复选框, 使用此选项将在滚动时保持选择状态.. 希望它会有所帮助...

答案 1 :(得分:0)

将ListItem对象定义为具有“已检查”字段

class ListItem{
boolean isChecked=false;
}

在列表适配器中getViewonCheckedChangeListener附加到CheckBox并更改对象的已检查状态。类似的东西:

final MessageItem Message=getItem(position);
        message.setText(Message.text);
        //set data

        select.setOnCheckedChangeListener(null); //important so that when reusing the view the old listener isn't called
        select.setChecked(Message.selected);
        select.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                // TODO Auto-generated method stub
                Message.selected=isChecked;
            }
        });