WebView.HitTestResult的使用

在微信里看文章,文章都是網(wǎng)頁,但長按圖片后會(huì)彈出一個(gè)對(duì)話框讓用戶選擇要進(jìn)行的操作,這個(gè)操作我想很多人都很熟悉,那天筆者竟突然覺得有些神奇,難道說WebView有相應(yīng)的API可以對(duì)頁面上的資源類型進(jìn)行區(qū)分嗎?查了一下資料后發(fā)現(xiàn)確實(shí)如此,特此記錄一下:

        //長按處理各種類型的事件
        mWebView.setOnLongClickListener(new OnLongClickListener() {
            @Override
            public boolean onLongClick(View v) {
                WebView.HitTestResult result = mWebView.getHitTestResult();
                if (null == result)
                    return false;
                int type = result.getType();
                switch (type) {
                    case WebView.HitTestResult.EDIT_TEXT_TYPE: // 選中的文字類型
                        break;
                    case WebView.HitTestResult.PHONE_TYPE: // 處理撥號(hào)
                        break;
                    case WebView.HitTestResult.EMAIL_TYPE: // 處理Email
                        break;
                    case WebView.HitTestResult.GEO_TYPE: //  地圖類型
                        break;
                    case WebView.HitTestResult.SRC_ANCHOR_TYPE: // 超鏈接
                        break;
                    case WebView.HitTestResult.SRC_IMAGE_ANCHOR_TYPE: // 帶有鏈接的圖片類型
                    case WebView.HitTestResult.IMAGE_TYPE: // 處理長按圖片的菜單項(xiàng)
                        String url = result.getExtra();
                        if (url != null && URLUtil.isValidUrl(url)) {
                            //彈框
                        }
                        return true;
                    case WebView.HitTestResult.UNKNOWN_TYPE: //未知
                        break;
                }
                return false;
            }
        });

基于這個(gè)東東,我們可以對(duì)網(wǎng)頁不同的資源進(jìn)行不同的處理操作,只要你封裝得好,你可以打造一個(gè)功能齊全的WebView,當(dāng)然,建議使用騰訊X5內(nèi)核替換系統(tǒng)自帶的WebView!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 今天早上,我透過窗戶清楚的看見:屋頂上是雪,車上是雪,樹上也是雪,到處都是雪。 ...
    完梓煩閱讀 186評(píng)論 0 0
  • 2018.5.7周一 大雨 今天是回來正式上班第一天。 我不在這一周,許多工作都積累下來了。加上老板正式接下龍崗的...
    LoveVicky閱讀 354評(píng)論 0 1
  • 冬日里的一縷陽光,撒在紫萱在臉上,窗外下著小雪,把校園里的人行道鋪上一層白雪。紫萱手扶著結(jié)冰的窗戶,她想起了一年前...
    憂兔閱讀 214評(píng)論 0 1
  • 轉(zhuǎn)眼間,我成為健身房會(huì)員快兩年了?,F(xiàn)在回想起來,挺感謝當(dāng)初那個(gè)經(jīng)過一番猶豫決定隱瞞父母、把自己的生活費(fèi)拿來辦卡的自...
    G小姐的自由世界閱讀 383評(píng)論 0 0
  • 今天是最早一次寫東西,上了大學(xué)之后我發(fā)現(xiàn)那個(gè)當(dāng)時(shí)想要給自己大學(xué)生活爭(zhēng)光貼彩的那個(gè)自己不知道去那里了,一天到晚都是在...
    小10閱讀 1,103評(píng)論 0 1

友情鏈接更多精彩內(nèi)容