解决办法:
// 按下返回键返回上一页
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && this.wv.canGoBack()) {
String url = this.wv.getUrl().toString();
this.wv.goBack();
// 如果遇到迷之无法返回上一页
if (this.wv.getUrl().toString().equals(url)) {
this.wv.goBack();
}
return true;
}
return super.onKeyDown(keyCode, event);
}
原理:
我也不知道为什么,在访问某些网站时,点击返回键,页面不但不返回而且还会出现加载当前的页面,经过多次尝试,发现了只要我快速的按下返回键2次以上,就能成功返回到上一页,因此我在onKeyDown()添加了一个判断语句,记录页面在goBack()的URL,然后执行goBack(),在goBack()后判断当前页面是否等于goBack()前的页面(判断URL),如果等于,则表明当前遇到了迷之不能返回上一页的问题,然后再次执行goBack(),此步等同于快速按下2次返回键,然后页面就正常返回啦!
网友评论