I am able get back key on backpressed, but unable to show alert dialog dialog in key.
@Override
public void onBackPressed() {
super.onBackPressed();
new AlertDialog.Builder(LoginActivity.this)
.setIcon(android.R.drawable.ic_dialog_alert)
.setTitle("Exit")
.setMessage("Are you want to exit from application?")
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// finish();
}
})
.setNegativeButton("No", null)
.show();
// moveTaskToBack(true);
}
Log:-
01-23 23:41:53.461: E/WindowManager(10905): Activity com.apps.savvyshopper.login.LoginActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView{41f767f8 V.E..... R.....I. 0,0-513,299} that was originally added here
01-23 23:41:53.461: E/WindowManager(10905): android.view.WindowLeaked: Activity com.apps.savvyshopper.login.LoginActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView{41f767f8 V.E..... R.....I. 0,0-513,299} that was originally added here
01-23 23:41:53.461: E/WindowManager(10905): at android.view.ViewRootImpl.<init>(ViewRootImpl.java:409)
01-23 23:41:53.461: E/WindowManager(10905): at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:218)
01-23 23:41:53.461: E/WindowManager(10905): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
01-23 23:41:53.461: E/WindowManager(10905): at android.app.Dialog.show(Dialog.java:281)
01-23 23:41:53.461: E/WindowManager(10905): at android.app.AlertDialog$Builder.show(AlertDialog.java:951)
01-23 23:41:53.461: E/WindowManager(10905): at com.apps.savvyshopper.login.LoginActivity.onBackPressed(LoginActivity.java:275)
01-23 23:41:53.461: E/WindowManager(10905): at android.app.Activity.onKeyUp(Activity.java:2156)
01-23 23:41:53.461: E/WindowManager(10905): at android.view.KeyEvent.dispatch(KeyEvent.java:2637)
01-23 23:41:53.461: E/WindowManager(10905): at android.app.Activity.dispatchKeyEvent(Activity.java:2393)
01-23 23:41:53.461: E/WindowManager(10905): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.java:1871)
01-23 23:41:53.461: E/WindowManager(10905): at android.view.ViewRootImpl.deliverKeyEventPostIme(ViewRootImpl.java:4118)
01-23 23:41:53.461: E/WindowManager(10905): at android.view.ViewRootImpl.handleImeFinishedEvent(ViewRootImpl.java:4061)
01-23 23:41:53.461: E/WindowManager(10905): at android.view.ViewRootImpl$ViewRootHandler.handleMessage(ViewRootImpl.java:3144)
01-23 23:41:53.461: E/WindowManager(10905): at android.os.Handler.dispatchMessage(Handler.java:107)
01-23 23:41:53.461: E/WindowManager(10905): at android.os.Looper.loop(Looper.java:194)
01-23 23:41:53.461: E/WindowManager(10905): at android.app.ActivityThread.main(ActivityThread.java:5371)
01-23 23:41:53.461: E/WindowManager(10905): at java.lang.reflect.Method.invokeNative(Native Method)
01-23 23:41:53.461: E/WindowManager(10905): at java.lang.reflect.Method.invoke(Method.java:525)
01-23 23:41:53.461: E/WindowManager(10905): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
01-23 23:41:53.461: E/WindowManager(10905): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
01-23 23:41:53.461: E/WindowManager(10905): at dalvik.system.NativeStart.main(Native Method)
If anyone have idea please reply.Thanks in advance..
Please comment this line in your public void onBackPressed()
Method, and it should work fine.
super.onBackPressed();
Also add .create()
on your AlertDialog
before calling .show()
:
new AlertDialog.Builder(LoginActivity.this)
.setIcon(android.R.drawable.ic_dialog_alert)
.setTitle("Exit")
.setMessage("Are you want to exit from application?")
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// finish();
}
})
.setNegativeButton("No", null)
.create()
.show();
I hope this helps.