Мне нужно показать предупреждение с кнопкой «Да нет» на кнопке «Назад» для выхода из модуля. Я знаю метод onKeyDown (). Я написал код
Boolean bLogout=false,bTemp=false;
private void showLogoutDialog(final int keyCode, final KeyEvent event)
{
AlertDialog.Builder builder = new AlertDialog.Builder(TaskList.this);
builder.setMessage("Do you want to logout?")
.setTitle("test")
.setCancelable(true)
.setPositiveButton("Yes", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int id) {
bLogout=false;
bTemp=true;
onKeyDown(keyCode, event);
}
}).setNegativeButton("No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
bTemp=true;
bLogout=true;
}
});
AlertDialog alert = builder.create();
alert.show();
}
public boolean onKeyDown( int keyCode, KeyEvent event)
{
// bLogout=false;
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount()==0)
{
if(!bTemp)
{
showLogoutDialog(keyCode,event);
return false;
}
else
{
bTemp=false;
if(!bLogout)
{
return super.onKeyDown(keyCode, event);
}
else
{
bLogout=false;
return true;
}
}
}
else
return super.onKeyDown(keyCode, event);
}
но при нажатии клавиши Да я не могу выйти из приложения. На самом деле мне нужно сделать это на главном экране и спросить пользователя, хочет ли он выйти из системы?
Пожалуйста, помогите.