Java 删除Listview中的所有我的项目

Java 删除Listview中的所有我的项目,java,android,Java,Android,我的行中有一个Listview,我有一个复选框来选择要删除的项目。 我想有一个按钮来选择我的所有项目,并同时删除它们。 当我单击我的按钮选择所有项目时,仅选择最后一个项目 这是我的密码: all.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { for(int i=0;i<listview

我的行中有一个Listview,我有一个复选框来选择要删除的项目。 我想有一个按钮来选择我的所有项目,并同时删除它们。 当我单击我的按钮选择所有项目时,仅选择最后一个项目

这是我的密码:

 all.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View view) {
                for(int i=0;i<listview.getChildCount();i++){
                    Log.i("mhs",listview.getChildCount()+"");
                    checkBox.setChecked(true);
                }


            }
        });

如何一起选择所有项目?

listview的问题是视图是循环使用的!这意味着

            checkBox.setChecked(true);

只需编辑当前活动项即可。如果要删除所有项目,最好的方法是清除正在使用的列表,并在for循环中添加以下内容:

currentCheckBox = listView.getChildAt(i);
//now you should have the correct checkBox

编辑:如果您的需要只是简单地删除数据和清除,我会为此制定一个方法。调用它,从数据库中删除项目,然后清除适配器。记不起此处是否自动调用了notifyDatasetChanged,如果没有,请执行该操作

只需像_ARRAYLIST.clear一样清除列表;并确保在清除列表后使用notifiyDatachange发布您的适配器类。我假设您要从某种持久性系统数据库、文件。。。您只需删除所有此项目,然后更新您的适配器我刚才选择的最后一个项目。现在我不清除任何内容。首先,我必须让他们在删除他们之后找到她。什么是“复选框”?您正在执行for循环,但未使用增量获取当前项。如何清除我的列表?如何勾选所有我的复选框,然后将其删除?您的意思是mylistview.clear?我无法理解您的意思,更好的方法可能是使用listView.setAdapternull;是,但我想先选择我的项目,然后删除它们
currentCheckBox = listView.getChildAt(i);
//now you should have the correct checkBox