[英]WebView back button issue in android
我正在使用WebView在应用程序中显示url。当我单击设备中的后退按钮时,它会终止并关闭应用程序。 例如:我给链接为
w.loadUrl("http://www.google.com");
在我正在搜索,它进入webview内的下一页。但是当我点击回来
按钮键,它关闭应用程序,而不是回到我搜索的历史记录。
如何解决这个问题。? 在这里给出的任何东西,如果是的话,应该给出什么?
@Override
public void onBackPressed() { }
提前致谢。
如果您想在webview
浏览历史记录,请将以下代码添加到您的webview
活动中
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
mWebView.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
你可以看到链接或下面的代码: -
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(event.getAction() == KeyEvent.ACTION_DOWN){
switch(keyCode)
{
case KeyEvent.KEYCODE_BACK:
if(mWebView.canGoBack() == true){
mWebView.goBack();
}else{
finish();
}
return true;
}
}
return super.onKeyDown(keyCode, event);
}
在这种情况下,您需要通过此代码覆盖后退按钮,您可以覆盖后退按钮
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
moveTaskToBack(true);
return true;
}
return super.onKeyDown(keyCode, event);
}
你可以使用下面的代码,它对我有用。
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (Integer.valueOf(android.os.Build.VERSION.SDK) < 7
&& keyCode == KeyEvent.KEYCODE_BACK
&& event.getRepeatCount() == 0) {
// Take care of calling this method on earlier versions of
// the platform where it doesn't exist.
onBackPressed();
}
return super.onKeyUp(keyCode, event);
}
@Override
public void onBackPressed() {
return;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.