アプリのアクティビティを終了するときにデータを保存しようとしています。
@Override
public void onBackPressed() {
super.onBackPressed();
if(loadInboxPreferencesCurrent()==false){
showAlertUserDialogInbox();
}
}
public void showAlertUserDialogInbox() {
AlertDialog.Builder builderMiniAlert = new AlertDialog.Builder(this);
builderMiniAlert.setMessage("Do you want to exit without saving your App. Inbox Settings..\n\nDo you want to Save now. ?")
.setCancelable(false); // disallow user to hit the 'back' button
builderMiniAlert.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
//Save settings here
onBackPresedNSave();
}
});
builderMiniAlert.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
Toast.makeText(getApplicationContext(), "To set your App. Inbox Settings later, press menu key and select Save Inbox Settings.", Toast.LENGTH_LONG).show();
arg0.dismiss();
}
});
builderMiniAlert.setTitle("Ultimate Sms Inbox Alert...");
builderMiniAlert.show();
}
本当の問題は、戻るボタンを押した後、ダイアログが一瞬表示され、ユーザーが「はい」/「いいえ」ボタンをクリックせずに消えてしまうことです。