0

我在主要活动上有一个带有 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());
}
4

1 回答 1

1

当用户选择“是”时,需要执行这些行:

CandidatesDatabaseHelper dbHelper = new CandidatesDatabaseHelper(getApplicationContext());
dbHelper.onReset(dbHelper.getWritableDatabase());
于 2012-12-17T02:25:13.143 回答