我想在saveState()调用中做一些清理。如果在退出活动时出现错误 ,我想弹出一个对话框,但此时活动已经消失。我的上下文是什么?
我想从一个名为StudentEdit的活动中发生这种情况,但上下文应该是什么? 当我使用StudentEdit.this时,对话框弹出并消失。 getApplicationContext导致 空指针异常。
private void saveState() {
// some error checking code
// if blah blah
AlertDialog alertDialog = new AlertDialog.Builder(StudentEdit.this).create();
alertDialog.setMessage("error");
alertDialog.setButton(BUTTON_POSITIVE, "Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// do something for yes
} });
alertDialog.setButton(BUTTON_NEGATIVE, "No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel(); // kill dialog
StudentEdit.this.finish(); // kill the activity
}
});
alertDialog.show();
}
澄清,我的saveState被称为onPause和onSaveInstanceState – Martin