从列表视图中删除所选项目

时间:2011-05-23 12:14:26

标签: android listview

我开发了一个代码,我已动态填充列表视图。

现在我想在按钮点击(按下删除按钮)

上从列表视图中删除所选项目

我在这个网站上搜索过这个,但没有得到任何确切的解决方案,所以我发布了这个问题

请帮我解决这个问题:

删除按钮onClickListener上的

代码如下所示:

DeleteButton.setOnClickListener(new Button.OnClickListener() {
        public void onClick(View v) {
            if (idx >= 0) {
                Log.v("Item index deleted", idx + "");
                idx = OdrLst.getCheckedItemPosition();
                String delete = (String) ((OdrLst.getAdapter())
                        .getItem(idx));
                // Long deteteId = OdrLst.getAdapter().getItemId(idx);
                Log.d("Item deleted", delete);
                Log.d("adapter count before", adapter.getCount() + "");
                Log.d("lv count before", OdrLst.getCount() + "");
                // Log.d("listitems count before", listItems.+"");
                adapter.remove(delete);
                //listItems.remove(idx);
                adapter.notifyDataSetChanged();
                OdrLst.setAdapter(adapter);
                // OdrLst.removeViewAt(idx);
                // adapter.clear();
                Log.d("adapter count after", adapter.getCount() + "");
                Log.d("lv count after", OdrLst.getCount() + "");
                //adapter.notifyDataSetChanged();
                // Log.v("adapter count after 1", adapter.getCount()+"");
            }
            // cleared = false; // <--- nope, we did not clear the value yet
            // delItem();
        }
    });

此代码显示了要删除的确切位置和项目,但该项目未从列表视图中删除...

2 个答案:

答案 0 :(得分:2)

请在删除项目后尝试添加此内容。

adapter.notifyDataSetChanged();

答案 1 :(得分:1)

您可以制作包含复选框或imageview的自定义Listview,然后使用Arraylist获取列表中单击的项目。 参考这些链接: Remove item from the listview in Android