我正在尝试删除从db sqlite获取值的listview行。删除方法就是这个:
public boolean deleteRow(long id) {
String where = "WHERE " + DataBaseWrapper.APP_ID + "=" + id;
return database.delete(DataBaseWrapper.SC_TABLE, where, null) != 0;
}
我现在尝试了两种方式但都没有效果;第一个是以这种方式在我的片段中使用OnItemLongClickListener
lvTest.setLongClickable(true);
lvTest.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
shOperations.deleteRow(id);
return false;
}
});
但似乎没有做任何事情..我试图放一些日志,但他们没有出现。我也尝试将返回设置为true
但没有成功..另一种方式来自适配器;在getView方法中我写了这个:
mViewHolder.tvTitle.setOnLongClickListener(new View.OnLongClickListener() {
ShortcutsOperations scOperations = new ShortcutsOperations(DrawerActivity.instance);
public boolean onLongClick(View arg0) {
scOperations.deleteRow(getItemId(position));
return false;
}
});
但没有任何改变..这可能是问题?