方法'onbackpressed()'又递归,只能通过抛出任何停止它的例外方式结束吗?
尝试此代码
@Override
public void onBackPressed() {
if (getFragmentManager().getBackStackEntryCount() == 1) {
showAlertDialog("Tap again to exit!", "Your_app_name");
} else {
getFragmentManager().popBackStackImmediate();
}
}
i表示ShowAlertDialog(),这是一种警报对话框的方法。您可以使用普通对话框。
通过此代码,当堆栈变为0时,它会弹出以获取警报以从应用程序中退出。否则它会弹出片段。
您正在构建对话框,但您没有创建并显示它。只需添加以下代码行,就可以了。
builder.create().show();