方案1
cursor.requery();
adapter.notifyDataSetChanged();
问题:文档每个分类共用一个cursor,这时候的cursor是最后一个,就不行了。
方案2
重启Activity
Intent intent = getIntent();
finish();
startActivity(intent);
问题:界面会跳动。
方案3
使用 List 存取 Cursor 和 Adapter
//初始化全局List
List<Cursor> list_cursor = new ArrayList<>();
List<SimpleCursorAdapter> list_adapter = new ArrayList<>();
... 生成cursor、adapter ...
list_cursor.add(cursor);
list_adapter.add(adapter);
... 点击删除 ...
File file = new File(filepath);
boolean b = file.delete();
if (b) {
for (int i=0; i<list_adapter.size(); i++) {
list_cursor.get(i).requery();
list_adapter.get(i).notifyDataSetChanged();
}
}
完美解决。