Reputation: 1093
I'm trying to set Context menu to onBackPressedButton like "Are you sure to quit?"
Here I override onBackPressed
:
I don't know how to call menu. What should I register here?
@Override
public void onBackPressed() {
registerForContextMenu();
return;
}
or what view should I attach?
@Override
public void onBackPressed() {
this.openContextMenu();
return;
}
Should I create viewList
to it?
I've overridden onCreateContextMenu
:
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenu.ContextMenuInfo menuInfo) {
menu.add(0,YES,0,"Yes");
menu.add(0,NO,0,"No");
}
I've also overridden and onContextItemSelected
:
@Override
public boolean onContextItemSelected(MenuItem item) {
switch (item.getItemId()) {
case YES:
finish();
break;
case NO:
break;
}
return super.onContextItemSelected(item);
}
How must I do it?
Upvotes: 0
Views: 105
Reputation: 446
Just call onBackPressed()
method in your class. Find a sample code below.
public void onBackPressed() {
new AlertDialog.Builder(this)
.setTitle("Really Exit?")
.setMessage("Are you sure you want to exit?")
.setNegativeButton(android.R.string.no, null)
.setPositiveButton(android.R.string.yes,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
LoginActivity.super.onBackPressed();
finish();
}
}).create().show();
}
Upvotes: 1