方法' onBackPressed()'无限地递归,并且只能通过抛出异常来结束

时间:2017-03-16 06:09:29

标签: android

方法' onBackPressed()'无限地递归,并且只能以任何方式抛出异常来阻止它?

2 个答案:

答案 0 :(得分:2)

试试此代码

@Override
    public void onBackPressed() {
        if (getFragmentManager().getBackStackEntryCount() == 1) {
            showAlertDialog("Tap again to exit!", "Your_app_name");
        } else {
            getFragmentManager().popBackStackImmediate();
        }
    }

我代表showAlertDialog(),这是一个警告对话框的方法。你可以使用普通对话框。

通过此代码,当堆栈变为0时,它会弹出警报以退出应用程序。否则会弹出片段。

答案 1 :(得分:0)

您正在构建对话框但不创建并显示它。只需添加以下代码行,您就可以了。

builder.create().show();