日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

cef在android中使用_关于富文本在Android中的应用以及遇到的坑

發布時間:2025/3/11 Android 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 cef在android中使用_关于富文本在Android中的应用以及遇到的坑 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

富文本可以為用戶提供更加多樣化的文本展示形式,但由于其使用了H5標簽的特殊性,一般都需要第三方框架的支持。這里推薦一款合適的第三方富文本框架,richeditor。

首先我們要使用該功能需要引入相關jar包,引入方法如下

compile 'jp.wasabeef:richeditor-android:1.2.0'

然后我們需要解決一個問題,那就是,在富文本編輯器的使用中,5.0以下的系統自帶的webview無法實現刪除圖片的功能。這個漏洞在5.0以后被谷歌公司進行了修復。但是問題來了,公司的軟件是要兼容到4.2系統的,總不能因為這個問題不讓用戶用4.x的手機吧,而且這批用戶還不少,所以需要解決這個問題。我們的思路是替換掉系統的webview,更換第三方自定義webview。這里有一個好的框架推薦就是騰訊的X5內核,內含騰訊重寫的Webview,版本到7.0。這里不重點講述X5內核的好處,我們看一下如何替換。我們看到,RichEditor中最關鍵的一個自定義類是一個叫做RichEditor的類。這是我們布局上輸入富文本區域的控件。我們看到它的繼承類是WebView。這里咱們把代碼拷貝出來并且重寫該類,并將繼承類換成X5內核中的WebView,如下樣式:

public class XRichEditor extends com.tencent.smtt.sdk.WebView

這樣我們就可以在這個類中進行其他的一些修改,比如新功能的添加之類的,下面舉兩個實用的小例子

例子1:

這個富文本沒有添加分割線的方法,我們為它加一個。在重寫的XRichEditor中,就是集成了X5內核的富文本中,我們寫入如下代碼

public void setSplitt() {

exec("javascript:RE.insertHTML('


');");

}

這樣我們就添加了一個加入分割線的方法。其實細心的朋友已經發現insertHTML就是在光標處插入html代碼的方法,方便我們在光標的停留位置插入代碼。

例子2:

我們還可以讓網頁的內容響應我們的點擊事件

public void insertImg(String url, String alt){

String html = "
";

exec("javascript:RE.insertHTML('"+html+"');");

Log.i("img",html);

}

這樣,我們就可以讓我們的圖片響應通過WebView注入的接口,從而調用我們原生的方法。

另外,我們講一下富文本編輯器的原理。

富文本編輯器其實就是一個加載在我們WebVIew上的一個網頁,網頁的源碼是這樣寫的

可以看到,div被我們標記成了內容可以編輯的狀態。

緊接著我們使用document.execCommand的相關方法在js文件中對HTML進行相關的操作。改套方法可以允許運行命令來操縱可編輯區域的內容。大多數命令影響文檔的選擇(粗體,斜體等),而其他命令插入新元素(添加鏈接)或影響整行(縮進)。當使用contentEditable時,調用 execCommand() 將影響當前活動的可編輯元素。

這樣我們就可以愉快的使用富文本編輯器了。更多功能還要讀者自己去探索。

By WaterWood

總結

以上是生活随笔為你收集整理的cef在android中使用_关于富文本在Android中的应用以及遇到的坑的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。