WebView翻譯的API大全

前言

好久沒在CSDN寫博客了,最近有時間把一些之前項目期總結的東西,傳上來給大家分享,這是本人花了3天獨自翻譯的.希望能夠幫助,同時也希望大家可以指明錯誤.博主會更努力,那下面緊接着是WebView的一個小翻譯系列.

導航

WebView的介紹
http://blog.csdn.net/l540675759/article/details/54709676

WebView翻譯的API大全
http://blog.csdn.net/l540675759/article/details/54709664

WebView設置之WebViewClient
http://blog.csdn.net/l540675759/article/details/54709687

WebView設置之WebChromeClient
http://blog.csdn.net/l540675759/article/details/54709680

WebView設置之WebSettings
http://blog.csdn.net/l540675759/article/details/54709690

WebView介紹

addJavaScriptInterface(Object o,String name)

addJavaScriptInterface(Object o,String name)

class JsObject{
    @JavaScriptInterface
    public String toString{xxxxx}
}

使用方法:webView.addJavaScriptInterface(new JsObject(),"xxx")

參數:Object o 可被Js控制的對象,Objectnull無反應.
    String Js可調用的標識.

注意:在低版本可能會存在安全風險.

CanGoBack() 返回值:boolean

得到當前WebView是否有可以回退的歷史記錄.

CanGoBackOnForward(int i) 返回值:boolean

當前頁面是否能夠滿足所需頁數情況下,能夠移動.

CanGoForward() 返回值:boolean

當前頁面是否可以向前移動.

ClearCache(boolean includeDisFiles)

清除WebView的緩存資源,這將爲所有WebView,清除緩存使用.如果爲false,則僅清理內存緩存,如果爲true,則將會清除本地緩存.

ClearClientCertPreferences(Runnable onCleaned)

(1)清除所有當前客戶端正在進行/取消的回調.

(2)當接收到廣播,ACTION_STORAGE_CHANGED.

(3)所有應用程序的webView共享的這個證書.

參數:onCleared的子線程,如果對該回調不感興趣直接傳null,就將會調用主線程來清除.

ClearFormData()

刪除自動刪除的表單信息
注意它並不會刪除webView的儲存信息,只會刪除自動彈出的信息.

ClearHistory()

告訴WebView清除前進和後退的歷史記錄.

clearMatches()

清除當前WebView界面,使用搜索(findAllSync(String))的查找匹配的字符串的高亮狀態.

clearSslPreferences()

清除SSL表單中,當前進程中錯誤的SSL證書.

CopyBackForwardList()

返回對象:WebBackForwardList

WebBackForwardList:返回的是當前WebView的歷史數據集合對象(隊列),注意返回的列表是被當前拷貝的,不同時刻會返回不同的狀態.

createPrintDocumentAdapter()

返回對象:PrintDocumentAdapter 
參數:String documentName 打印文件的名稱

創建一個當WebView頁面已經定義過所有元素的打印文件的適配器.

 createWebMessageChannel()

返回對象:WebMessagePort[]
創建HTML5與本地的程序的端口,方便發送信息以及其它行爲的交互,可以通過返回對象向HTML端發送交互信息.

destory()

生命週期的銷燬,銷燬當前WebView的視圖,這個方法應該在WebView視圖被系統移除後調用.

documentHasImages()

判斷下發的回調是否包含圖片的信息
如果含有圖片         Message.arg1 = 1
如果不含有圖片       Message.arg1 = 0

enableSlowWholeDocumentDraw()

(1)只針對目標版本"L",WebView有一個新的默認行爲,去有選擇的展示並繪製HTML文檔,這樣可以減小內存並且提高性能.

(2)這些情況對於開發人員是公開的,然而某些情況需要禁用.

當使用ondraw()方法去繪製獨立的對象,或者繪製可以頁面以外的區域.

當App使用capturePicture()去獲得一個非常大的HTML文檔.

注意:該方法對於HTML有一個顯著的性能成本,這種方法在使用的時候應該在創建WebView之前.

evaluateJavaScript()

void evaluateJavaScript (String script ,ValueCallBack<String> resultCallBack)

專門用於異步調用JavaScript方法,並且可以獲得一個回調.

String scrpit 是addJavaScriptInterface 傳遞的對象.

findAddress()

發現第一個需要搜索的字段,目前只有美國的地理位置可以被發現.

findAllSync()

搜索字段,並全局高亮顯示搜索結果,連續調用,將取消搜索請求.

findFocus()

返回對象: View
找到當前WebView視圖層,含有焦點的對象.

findNext()

查詢下一個已經"高亮顯示"的字段(已經執行過findAllAyns)如果已經clearMatches,那麼這個函數已經無效.

getCertficate()

獲得頂層視圖的SSL證書,如果得到的證書爲null,則說明當前網站是不安全的.

getContentHeight()

返回對象: int
獲得當前HTML視圖內容的高度

getFavicon()

返回值:Bitmap
得到當前頁面的圖標(標識),注意:此方法知道WebViewClient的onReceivedIcon之後纔有返回對象.

getHandler()

返回值:Handler
得到當前ViewHandler對象,這個Handler能夠發送對象和主線程交互.

getHitTestResult()

返回值:HitTestResult
獲得當前觸摸事件的反饋信息.

getHttpAuthUsernamePassword()

參數:String host,String realm
返回對象:String[]
獲取host和realm的身份驗證信息,返回NULL意味着未發現.

getOriginalUrl()

得到原始界面的URL,返回字段可能與WebViewClient.onPageStarted不同,因爲URL隨時在改變.

getProgress()

返回值 int progress
得到當前頁面正在加載的百分比

getSettings()

返回值:WebSetting
獲得用戶控制WebViewWebSetting對象.

getTitle()

返回值:String
獲得當前WebView內容的標題,必須得在onReceiverTitle之後才能使用.

getUrl()

返回值:String 
獲得當前頁面的URL,並且在onPageStarted中拿到的Url不一定會與當前一致,因爲Started之後,Url雖然被加載,但是頁面可能沒有被加載出來.

goBack()

從當前WebView的加載中進行後退操作.

goBackOrForward(int step)

從歷史記錄中,前進或後退操作,Step表示步數.

goForward()

從歷史記錄,進行前進操作

invokeZoomPicker()

調用webView的圖形變焦器,這個變焦後的圖片出現在屏幕的樣子取決變焦的等級.

isPrivateBrowsingEnabled

返回值:boolean
獲得當前的webView上面是否使用了隱私保護.

loadData(String data,String mineType,String encoding)

data : 一串給定的格式的編碼
mineType : MIME的類型 e.g:text/html
encoding : data的編碼格式
將制定的URL加載到webView上

注意:
(1)JavaScript基於源URL,在loadData方法並不適用,需要在loadDataWithBaseURL()方法,並且支付HTTP(s).

(2)如果編碼格式是Base64,那麼參數必須也是Base64格式,如果使用超出8位,請使用ASCII編碼.

特殊符號表示:
# ---------> %23
% ---------> %25
\ ---------> %27
? ---------> %3f

loadDataWithBaseURL(String baseUrl,String data,String mimeType,String encoding,String historyUrl)

參數:
(1)將給定數據加載到BaseUrl上,防止JSP的同源策略.
注意:
這種方式只能訪問本地設備文件中指定Scheme:

包括"https","http","ftp","about" or "JavaScript"

如果loadData()操作基於URL在loadDataWithBaseURL,那麼就相當於無視history list數據,並且URL屬於數據一部分.

loadUrl(String url)

加載一個Url對象

loadUrl(String url ,Map

加載一個Url對象,並且添加請求頭信息.

onPragEvent()

處理WebView上的拖動事件

onGenericMotionEvent()

通用的事件處理和onTouchEvent()差不多.

onProvideVirtualStructure(VirtualStructure structure)

詳情請見WebView.VisualStateCallBack類.

pageDown(boolean bottom)

滑動文本至WebView一半區域的大小(向下)
參數:bottom   確認當前頁面是否滑動到頁面底部
返回值: 當前頁面是否在滑動

pageUp(boolean top)

滑動文本至WebView一半區域的大小(向上)
參數:top 確認當前頁面是否滑動到頁面頂部.
返回值:當前頁面是否正在滑動.

pauseTimers()

暫停所有佈局,參數和JSP的包括WebView的計時器,注意,這是個全局請求不侷限在webView中,可能會導致程序停止.

PostUrl()

裝在Data 通過Post方法發送到Url中.
注意:
如果Url不是一個網絡的Url,那麼就會執行loadUrl()方法.

requestFocusNodeHref(Message hrefMessage)

請求當前的錨點(觸摸點)的Image或其他,如果Message = null 立刻返回.
                            -----Url
hrefMsg依附於請求的結果 :   -----title
                            -----src

requestImageRef (Message msg)

請求用戶最後觸摸的URL,Message參數不能爲null

requestTimes()

復原佈局,參數JavaScript信息.

SaveWebArchive(String filename)

對當前的視圖進行存檔

SavaWebArchive(String because,boolean autoname,ValueCallBack callback)

參數:
because  : 舊檔文件名
autoname : false  會取because
           true   會取because爲文件夾名
           callback 儲存回調的集合.

setDownloadListener(DownLoadListener listener)

當前內容並不需要進行渲染,需要下載會註冊一個監聽,來監聽下載.

setHttpAuthUserNamePassword(String host,String realm,String username,String password)

設置host,realm的驗證信息 username,password.

setNetWorkAvailable(boolean networkUp)

告訴WebView當前網絡是否可用,這將影響JavaScript的nativegatorisOnline (在線和離線的狀態)HTML5的響應事件時間.

ZoomBy(float zoomFactor)

在WebView中執行變焦操作,變焦因子  0.01f - 100f之內
                                        < 1f ->縮放狀態
                                        > 1f ->擴大狀態

某些頁面不支持,google支持百度不支持,這個分網站的

ZoomIn()

返回值 boolean 在這個WebView執行放大
返回true 放大成功 ,false 放大無變化.

ZoomOut()

返回值:booleanWebView上執行縮小
返回true 縮小成功,false 縮小無變化.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章