通过从数据库中删除listview项,Android
好的,我已经建立了一个应用程序,就像一个余数,每件事都可以正常工作,但当点击删除,首先删除了错误的行,然后现在甚至不工作 我现在有很多相同的答案来回答这个问题,我发誓我会尝试我找到的每一个 有件事我不知道 主活动中的此代码:通过从数据库中删除listview项,Android,android,Android,好的,我已经建立了一个应用程序,就像一个余数,每件事都可以正常工作,但当点击删除,首先删除了错误的行,然后现在甚至不工作 我现在有很多相同的答案来回答这个问题,我发誓我会尝试我找到的每一个 有件事我不知道 主活动中的此代码: lvEvent.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @Override public boolean onItemLongClick(A
lvEvent.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent, View v, int position, long id) {
db.deleteEvent(id);
return true;
}
});
还有一个用于填充列表视图的适配器。可能您将错误的
COLUMN.Id
传递给deleteEvent
方法long id
是在ListView行创建过程中动态单击创建的项目的行id(而不是单击项目的位置)
因此,您需要将位置
传递到删除事件
方法:
db.deleteEvent(position);
db是什么类型的对象?您可能还想发布列表视图的自定义适配器。谢谢,它现在可以工作了,但是它删除了关于我按下的第二行@GAOS:调试您的代码单击第一项或单击第二项时,
位置的值是多少?您可能需要通过(位置-1)
我认为OP不能依靠位置
从DB中删除该项。每次删除后,所有项目的相对位置值都会改变。@Rohit5k2:是,OP需要将自定义位置分配给db中的每一列以识别记录对不起,OP是什么意思?
db.deleteEvent(position);