Zhambulable
Zhambulable

Reputation: 1093

How to set Context menu to onBackPressedButton?

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

Answers (1)

Anshul Tyagi
Anshul Tyagi

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

Related Questions