奇怪的行为 onBackPressed
Strange behavior onBackPressed
我有一个 activity 包含 WebView,我在打开时传递 URL,
像这样:
Intent activity = new Intent(getApplicationContext(),NewActivity.class);
activity.putExtra("URL", url);
startActivity(activity);
当我们按下后退按钮时,它会关闭所有以前的活动并 return 到 MainActivity 所以我覆盖了 onBackPressed.
@Override
public void onBackPressed() {
finish();
}
它仍然关闭所有以前的活动。
注意:它在清单中声明如下:
<activity
android:name=".views.activities.NewActivity"
android:screenOrientation="portrait"/>
有什么问题吗?
我该如何解决这个问题,我只想打开上一个 activity onBackPressed
并完成当前一个。
如果我没理解错的话,您想导航到 WebView
中之前加载的网页,而不是从当前页面关闭它。
如果是这样,请尝试此解决方案。
@Override
public void onBackPressed() {
if (webView.canGoBack()) {
webView.goBack();
} else {
super.onBackPressed(); // or finish();
}
}
尝试退出视图。
@Override
public void onBackPressed() {
System.exit(REQUEST_CODE);
super.onBackPressed();
}
我有一个 activity 包含 WebView,我在打开时传递 URL, 像这样:
Intent activity = new Intent(getApplicationContext(),NewActivity.class);
activity.putExtra("URL", url);
startActivity(activity);
当我们按下后退按钮时,它会关闭所有以前的活动并 return 到 MainActivity 所以我覆盖了 onBackPressed.
@Override
public void onBackPressed() {
finish();
}
它仍然关闭所有以前的活动。
注意:它在清单中声明如下:
<activity
android:name=".views.activities.NewActivity"
android:screenOrientation="portrait"/>
有什么问题吗?
我该如何解决这个问题,我只想打开上一个 activity onBackPressed
并完成当前一个。
如果我没理解错的话,您想导航到 WebView
中之前加载的网页,而不是从当前页面关闭它。
如果是这样,请尝试此解决方案。
@Override
public void onBackPressed() {
if (webView.canGoBack()) {
webView.goBack();
} else {
super.onBackPressed(); // or finish();
}
}
尝试退出视图。
@Override
public void onBackPressed() {
System.exit(REQUEST_CODE);
super.onBackPressed();
}