Ho un'attività in cui quando preme il pulsante indietro, la sua finestra di dialogo di avviso non viene visualizzata. Quale potrebbe essere il problema? Ecco il mio codiceAttività suBackPress non mostra la finestra di avviso
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
super.onBackPressed();
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(LogFish.this);
// set title
alertDialogBuilder.setTitle("Exit");
alertDialogBuilder.setIcon(R.drawable.ic_action_search);
// set dialog message
alertDialogBuilder
.setMessage("This action will cause you to abandon all changes on current new fish log. \n\nAre you sure you want to exit?")
.setCancelable(false)
.setPositiveButton("YES",new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int id) {
// if this button is clicked, close
startActivity(new Intent(LogFish.this,MainActivity.class));
finish();
}
})
.setNegativeButton("NO",new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int id) {
// if this button is clicked, just close
dialog.cancel();
}
});
// create alert dialog
AlertDialog alertDialog = alertDialogBuilder.create();
// show it
alertDialog.show();
}
Si prega di verificare se la vostra chiave schiena non è catturato in onKeyDown() .... –
Controllare se non si schianto perché si corre sul thread principale? – IamStalker
In realtà è chiamato, ma immediatamente la tua attività viene completata perché hai scritto 'super.onBackPressed();'. Se rimuovi questo, la tua attività non è terminata sul retro Premi e viene visualizzata la finestra di dialogo. – user370305