我希望我的应用在退出应用时显示警告框,但是如果我尝试在onBackPressed()应用中添加警报框代码,则会强制关闭。
@Override
public void onBackPressed() {
if (Fragment1.canGoBack()) {
Fragment1.goBack();
}
if (Fragment2.canGoBack()) {
Fragment2.goBack();
} else {
super.onBackPressed();
}
这是webview使这些视图返回的代码。我应在哪里添加退出应用程序的警报框?
最佳答案
无需立即调用super.onBackPressed()
,而是先显示警报对话框,然后当用户按下按钮时,调用super.onBackPressed()
。
@Override
public void onBackPressed() {
boolean wentBack = false;
if (Fragment1.canGoBack()) {
wentBack = true;
Fragment1.goBack();
}
if (Fragment2.canGoBack()) {
wentBack = true;
Fragment2.goBack();
}
if (!wentBack) {
new AlertDialog.Builder(this)
.setTitle("Quit app?")
.setMessage("Do you want to quit?")
.setPositiveButton("Yes", (dialog, which) -> super.onBackPressed())
.setNegativeButton("No", (dialog, which) -> {})
.show();
}
}
关于java - 当我已经在使用onBackPressed()使Webview返回时,如何在Android应用程序中弹出退出警告框?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50612908/