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 缩小无变化.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章