Android WebView:使用goBackOrForward导航到Url哈希,而无需重新加载
创始人
2024-08-19 11:00:43
0

要在Android WebView中使用goBackOrForward导航到Url哈希,而无需重新加载页面,可以按照以下步骤进行操作:

1.在你的布局文件中添加一个WebView组件:


2.在你的活动或片段中,找到WebView并进行初始化:

WebView webView = findViewById(R.id.webview);
webView.setWebViewClient(new WebViewClient());
webView.getSettings().setJavaScriptEnabled(true);

3.创建一个自定义的WebViewClient来处理页面导航:

private class CustomWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            String url = request.getUrl().toString();
            if (url.contains("#")) {
                String hash = url.substring(url.indexOf("#"));
                view.loadUrl(hash);
                return true;
            }
        }
        return super.shouldOverrideUrlLoading(view, request);
    }
}

4.将自定义的WebViewClient设置给你的WebView:

WebView webView = findViewById(R.id.webview);
webView.setWebViewClient(new CustomWebViewClient());

现在,当WebView加载一个包含哈希的Url时,它将会导航到该哈希位置,而无需重新加载整个页面。例如,当WebView加载"https://example.com#section1"时,它将自动滚动到带有id为"section1"的元素。

请注意,这种方法仅在Android 5.0(API级别21)及以上版本上有效。在早期版本上,你可以使用shouldOverrideUrlLoading(WebView view, String url)方法来获取Url字符串并进行相应的处理。

相关内容

热门资讯

重大发现(Wepoke俱乐部)... 重大发现(Wepoke俱乐部)外挂透明挂辅助器安装(透视)软件透明挂(存在有挂)-哔哩哔哩关于Wep...
我来向大家传授!微扑克app(... 我来向大家传授!微扑克app(wEpOke)外挂透明挂辅助app(辅助挂)详细教程(竟然有挂)-哔哩...
一分钟了解(WPK自建房)外挂... 一分钟了解(WPK自建房)外挂透明挂辅助插件(透视)软件透明挂(2022已更新)(哔哩哔哩)WPK自...
透明安装(WPK)外挂透明挂辅... 透明安装(WPK)外挂透明挂辅助app(辅助挂)软件透明挂(有挂教学)-哔哩哔哩1、许多玩家不知道W...
重要通知!pokermaste... 1、重要通知!pokermaster外挂(wePoke)外挂透明挂辅助挂(辅助挂)力荐教程(有人有挂...
终于懂了(线上德州aapoke... 1、终于懂了(线上德州aapoker)外挂透明挂辅助挂(辅助挂)透视辅助(2021已更新)(哔哩哔哩...
最新通报(pokernow德州... 最新通报(pokernow德州)外挂透明挂辅助神器(辅助挂)透视辅助(存在有挂)-哔哩哔哩是由北京得...
必备攻略!Wepoke德州局(... 必备攻略!Wepoke德州局(wePoke)外挂透明挂辅助神器(辅助挂)我来教教你(有挂教程)-哔哩...
科技通报(aapoker ap... 相信很多朋友都在电脑上玩过aapoker app吧,但是很多朋友都在抱怨用电脑玩起来不方便。为此小编...
科技通报(wepokeai代打... 科技通报(wepokeai代打)外挂透明挂辅助脚本(辅助挂)透视辅助(有挂详情)-哔哩哔哩;实战中需...