奇怪的行为onBackPressed
我有一个活动包含的WebView,我通过URL而开放, 像这样:奇怪的行为onBackPressed
Intent activity = new Intent(getApplicationContext(),NewActivity.class);
activity.putExtra("URL", url);
startActivity(activity);
当我们按下后退按钮将关闭所有先前的活动,并返回到MainActivity所以我overrided onBackPressed.
@Override
public void onBackPressed() {
finish();
}
它仍然关闭所有以前的活动。
注:它在这样的清单中声明:
<activity
android:name=".views.activities.NewActivity"
android:screenOrientation="portrait"/>
有什么错呢?
我该如何解决这个问题,我只想打开之前的活动onBackPressed
并完成当前的活动。
如果我理解正确,您想浏览到以前加载网页在您的WebView
而不是从当前页面关闭它。
,如果这是真的尝试此解决方案。
@Override
public void onBackPressed() {
if (webView.canGoBack()) {
webView.goBack();
} else {
super.onBackPressed(); // or finish();
}
}
的请码开幕前不,我不这样做,我想浏览上一个活动,但实际发生的情况是,按回退按钮关闭所有以前的活动并返回MainActivity –
从哪个活动调用webview? –
我在NewActivity里面调用WebView –
尝试退出视图。
@Override
public void onBackPressed() {
System.exit(REQUEST_CODE);
super.onBackPressed();
}
同样的问题和相同的行为 –
你试过了吗?Intent activity = new Intent(CurrentActivity.this,NewActivity.class);'?用'CurrentActivity.this',而不是'getApplicationContext()' –
你调用'完成()'尝试在启动'NewActivity'后你的第一个活动? –
很抱歉,但使用CurrentActivity.this代替getApplicationContext()对我没有工作 –