我希望我的应用程序在退出应用程序时应显示警报框,但如果我尝试在 onBackPressed() 中添加警报框代码,应用程序将强制关闭。
@Override
public void onBackPressed() {
if (Fragment1.canGoBack()) {
Fragment1.goBack();
}
if (Fragment2.canGoBack()) {
Fragment2.goBack();
} else {
super.onBackPressed();
}
这是 WebView 的代码,用于使这些 View 返回。我应该在哪里添加用于退出应用程序的警报框?
最佳答案
不要立即调用 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/