我在主要活动上有一个带有 3 个按钮的应用程序。其中一个按钮是重置按钮,它下载、解析和填充 sql 数据库,并从本质上删除用户所做的所有更改。单击重置按钮时,会弹出一个警告对话框以确认操作。如果用户说“不”(即不想重置应用程序),则对话框关闭并且主菜单再次可见。然后,当用户单击 a 按钮以查看填充了数据库项目的列表视图时,除非我重新启动应用程序,否则不会发生这种情况。我不明白为什么会发生这种情况,并且 LogCat 中没有任何错误。
public void resetApp(View view) {
//TODO progress dialog
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(this);
alertBuilder.setTitle("Confirm reset");
alertBuilder.setMessage("Are you sure you want reset the app and lose all changes?");
alertBuilder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// execute download task again
new DownloadTask().execute(getApplicationContext());
}
});
alertBuilder.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
AlertDialog alert = alertBuilder.create();
alert.show();
CandidatesDatabaseHelper dbHelper = new CandidatesDatabaseHelper(getApplicationContext());
dbHelper.onReset(dbHelper.getWritableDatabase());
}