0

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

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

2 回答 2

0

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

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

在复选框选择更改值

entityobj[index].isChecked=true/false;

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

于 2013-10-03T11:46:44.287 回答
0

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

class ListItem{
boolean isChecked=false;
}

在您的列表适配器中,getView将 a 附加onCheckedChangeListenerCheckBox并更改对象的选中状态。就像是:

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;
            }
        }); 
于 2013-10-03T12:18:34.653 回答