android - Handling back key for navigation drawer and fragment page -
i working on app have few fragment pages have navigation drawer menu.
when on fragments page , click on key, application exit dialog working fine. when on fragment page , @ same time if click navigation menu, navigation menu top position. if click on key, application exit button coming want navigation menu should disappear first not exit dialogue box.
code onbackpressed():
public void onbackpressed() { final fragmentmanager fm = getsupportfragmentmanager(); if(fm.getbackstackentrycount() != 1){ super.onbackpressed(); } else { alertdialog.builder alertdialogbuilder = new alertdialog.builder(this); alertdialogbuilder.settitle("exit application?"); alertdialogbuilder .setmessage("click yes exit!") .setcancelable(false) .setpositivebutton("yes", new dialoginterface.onclicklistener() { public void onclick(dialoginterface dialog, int id) { movetasktoback(true); android.os.process.killprocess(android.os.process.mypid()); system.exit(1); } }) .setnegativebutton("no", new dialoginterface.onclicklistener() { public void onclick(dialoginterface dialog, int id) { dialog.cancel(); } }); alertdialog alertdialog = alertdialogbuilder.create(); alertdialog.show(); } } ==========================================================================
code ondraweritemclick(): private void ondraweritemclick(final int item) { userservice userservice = new userservice(this); switch (item) { case test1: test1(); break; case test2: test2(); break; case logout: userservice.logout(); finish(); toast.maketext(menuactivity.this, "logout", toast.length_short).show(); break; } mdrawerlayout.closedrawer(gravitycompat.start); }
@override public void onbackpressed() { drawerlayout drawer = (drawerlayout) findviewbyid(r.id.drawerlayout); assert drawer != null; if (drawer.isdraweropen(gravitycompat.start)) { drawer.closedrawer(gravitycompat.start); } else { super.onbackpressed(); } }
Comments
Post a Comment