Java 从SQLite和listView中删除项
我想用contextMenu从listView和SQLite数据库中删除项,我的代码不会删除任何内容。也许有人能帮我 DBAdapter.javaJava 从SQLite和listView中删除项,java,android,sqlite,listview,Java,Android,Sqlite,Listview,我想用contextMenu从listView和SQLite数据库中删除项,我的代码不会删除任何内容。也许有人能帮我 DBAdapter.java public void delete(String name)throws SQLException { SQLiteDatabase db = helper.getWritableDatabase(); if (db == null) { return; } S
public void delete(String name)throws SQLException {
SQLiteDatabase db = helper.getWritableDatabase();
if (db == null) {
return;
}
String[] whereArgs = new String[] { name };
db.delete("m_TB", "NAME"+ "=?", whereArgs);
db.close();
}
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
menu.add("Delete");
}
public boolean onContextItemSelected(MenuItem item) {
super.onContextItemSelected(item);
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
String name = info.toString();
if (item.getTitle().equals("Delete")) {
db.delete(name);
books.remove(item);
adapter.notifyDataSetChanged();
}
return true;
}
MainActivity.java
public void delete(String name)throws SQLException {
SQLiteDatabase db = helper.getWritableDatabase();
if (db == null) {
return;
}
String[] whereArgs = new String[] { name };
db.delete("m_TB", "NAME"+ "=?", whereArgs);
db.close();
}
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
menu.add("Delete");
}
public boolean onContextItemSelected(MenuItem item) {
super.onContextItemSelected(item);
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
String name = info.toString();
if (item.getTitle().equals("Delete")) {
db.delete(name);
books.remove(item);
adapter.notifyDataSetChanged();
}
return true;
}
long i=db.delete(“m_TB”,“NAME”+“=?”,wherergs)代码>它是否为您提供了删除查询运行的条件……….i值大于0,而查询运行存在其他问题。i thinck问题来自此部分:如果(item.getTitle().equals(“delete”),您的项不匹配此代码无效..我使用Toast.makeText(getApplicationContext(),“delete”,Toast.LENGTH\u SHORT)对其进行了测试;当按住项目并按deletelong i=db.delete(“m_TB”,“NAME”+“=?”,wherergs)时,它会显示代码>它是否为您提供了删除查询运行的条件……….i值大于0,而查询运行存在其他问题。i thinck问题来自此部分:如果(item.getTitle().equals(“delete”),您的项不匹配此代码无效..我使用Toast.makeText(getApplicationContext(),“delete”,Toast.LENGTH\u SHORT)对其进行了测试;当按住项目并按delete键时显示