如何将上下文菜单设置为onBackPressed按钮?

时间:2015-04-01 09:05:29

标签: java android

我试图将上下文菜单设置为 onBackPressedButton ,如"您确定要退出吗?" 在这里,我覆盖onBackPressed: 我不知道如何拨打菜单。我应该在这里注册什么?

@Override
public void onBackPressed() {
    registerForContextMenu();
    return;
}

或者我应该附加什么视图?

    @Override
public void onBackPressed() {
    this.openContextMenu();
    return;
}

我应该为它创建viewList吗? 我已覆盖onCreateContextMenu

   public void onCreateContextMenu(ContextMenu menu, View v,
                                ContextMenu.ContextMenuInfo menuInfo) {

    menu.add(0,YES,0,"Yes");
    menu.add(0,NO,0,"No");
}

我还覆盖了onContextItemSelected

@Override
public boolean onContextItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case YES:
            finish();
            break;
        case NO:
            break;
    }
    return super.onContextItemSelected(item);
}

我该怎么做?

1 个答案:

答案 0 :(得分:2)

只需在课堂上调用onBackPressed()方法即可。在下面找到示例代码。

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();
}