Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Android WebView无法维护历史记录大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在片段内部有一个webview,当我点击一个链接进入下一页时,但点击后退按钮不会让我回到前一页.当我检查canGoBACk时,它总是错误的.

public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceStatE)
{
    gameDetailsActivity = (GameDetailsActivity)getActivity();

    Bundle args = getArguments();
    int type = args.geTint(ARG_OBjeCT);
    View rootView = null;

    rootView = inflater.inflate(R.layout.gamedetailswebview,container,falsE);

    wv = (WebView) rootView.findViewById(R.id.WebViewGameDetails);

    wv.setWebViewClient(new WebViewClient());
    wv.getSetTings().setJavaScriptEnabled(true);
    wv.getSetTings().setPluginState(WebSetTings.PluginState.oN_DEMAND);
    wv.getSetTings().setBuilTinZoomControls(true); 
    wv.getSetTings().setSupportZoom(true);
    wv.getSetTings().setJavaScriptCanOpenWindowsAutomatically(true);   
    wv.getSetTings().setAllowFileAccess(true); 
    wv.getSetTings().setDomStorageEnabled(true);

    switch (typE)
    {
        case 1:
            wv.loadUrl(gameDetailsActivity.gameSumMaryURL);
            break;
        case 2:
            wv.loadUrl(gameDetailsActivity.gameReportURL);
            break;
    }

    return rootView;
}

public Boolean GoBACk()
{
    if (wv.canGoBACk())
    {
        wv.goBACk();
        return true;
    }

    return false;
}

@Override
public void onBACkPressed()
{
    int currentFragmenTindex = gameDetailsViewPager.getCurrentItem();

    if (currentFragmenTindex > 0)
    {
        Fragment webview = gameDetailsPagerAdapter
                .getItem(currentFragmenTindeX);
        if (webview instanceof GameDetailsWebViewFragment)
        {
            if (!((GameDetailsWebViewFragment) webview).GoBACk())
            {
                super.onBACkPressed();
            }
        }
    }
}

解决方法

我认为而不是wv.setWebViewClient(新的WebViewClient())
你应该扩展WebViewClient,覆盖shouldOverrideUrlLoading(),就像这样

@Override
    public Boolean shouldOverrideUrlLoading(WebView view,String url) {
        view.loadUrl(url);
        return true;
    }

大佬总结

以上是大佬教程为你收集整理的Android WebView无法维护历史记录全部内容,希望文章能够帮你解决Android WebView无法维护历史记录所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。