-1

如何使用 删除列表项并获取更新的列表onContextItemSelected

如何使用上下文菜单删除一行?

代码:

case R.id.Delete_Note:
            Database_Notepad db=new Database_Notepad(Create_Task.this);
            db.DeleteNote();

            break;

我的数据库:

public void DeleteNote(int rowId) {
            SQLiteDatabase db = this.getWritableDatabase();
            db.delete(Table_Notepad, Col_ID + " = ?", new String[] { String.valueOf(rowId) });
            db.close();
        }

删除项目后如何更新我的列表视图?

这就是我将数据设置为列表视图的方式:

Database_Notepad db = new Database_Notepad(Create_Task.this); Cursor c = db.Get_All_Note(); 
String[] from = new String[] {Database_Notepad.Col_File_Name,Database_Notepad.Col_Due_Date}; 
int[] to = new int[] {R.id.titlename, R.id.duedatetext}; 
SimpleCursorAdapter madapter = new SimpleCursorAdapter(Create_Task.this, R.layout.file_row, c, from, to); 
 this.setListAdapter(madapter); 
getListView().setOnItemClickListener(this); 
registerForContextMenu(getListView()); 
db.close();
4

1 回答 1

1

根据您的评论,您成功删除了行项目,但您未能更新列表视图,

因此,每当在列表视图数据中进行一些更改时,您应该通过像这样应用notifyDataSetChanged()adapter.notifyDataSetChanged()来通知您的适配器,如果某些项目被添加或删除,它将反映在您的列表视图中。

希望它有效!

于 2013-01-09T07:18:54.367 回答