Android activity中加载了webview,页面跳转后总是要点击两次手机的返回按钮才能回到上一页

页面跳转的操作是在webview里面进行的,是不是webview和Android都有自己的回退栈啊?... 页面跳转的操作是在webview里面进行的,是不是webview和Android都有自己的回退栈啊? 展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励20(财富值+成长值)
百度网友cc76d90
2017-01-12
知道答主
回答量:2
采纳率:0%
帮助的人:2157
展开全部

WebViewClient中的shouldOverrideUrlLoading方法如下重写:

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
    view.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
    view.loadUrl(url);
    return super.shouldOverrideUrlLoading(view, url);
}

onKeyDown如下重写:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
    if(keyCode==KeyEvent.KEYCODE_BACK){
        if(webView.canGoBack()){
            webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
            webView.goBack();
            return true;
        }else {
            finish();
            return true;
        }
    }
    return false;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
有车2015
2015-06-01 · TA获得超过893个赞
知道小有建树答主
回答量:684
采纳率:0%
帮助的人:354万
展开全部
你应该重写onkeydown事件了。先走了webview的canback
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式