删除数据库,Android中的listview项目

时间:2015-01-09 03:58:43

标签: android

好吧我已经构建了一个类似于余数的应用程序,每件事情都运行正常但是当点击删除时,首先删除错误的行,然后现在甚至不工作。

我现在对这个问题有很多相同的答案,我发誓我会尝试每一个我找到的答案!

有些事情我不知道!

MainActivitey中的这段代码:

lvEvent.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
        @Override
        public boolean onItemLongClick(AdapterView<?> parent, View v, int position, long id) {


            db.deleteEvent(id);

            return true;
        }
    });

这是DataBase中的删除部分:

public boolean deleteEvent(long id){
    return ((
    db.delete(TB_EVENT, COLUMN.Id + "=" + id, null  )
    //db.delete(TB_EVENT, COLUMN.id + "=?", new String[] { String.valueOf(id)});
    ) == 1 ) ? true : false;
}

还有一个适配器来填充列表视图。

1 个答案:

答案 0 :(得分:0)

您可能错误地将COLUMN.Id传递给deleteEvent方法。 long id是在ListView行创建期间动态创建的项目的行ID(不是单击项目的位置)。

因此,您需要将position传递给deleteEvent方法:

        db.deleteEvent(position);