当前位置: 首页 > news >正文

住房和城乡建设部网站公告软件排名工具

住房和城乡建设部网站公告,软件排名工具,seo网站查询,网站上的美工图片要怎么做什么是WebView WebView是Android中UI组件的一种,WebView基于webkit内核,不过由于兼容性的原因在Android5.0后改为了Chromium内核。 WebView可以用来展示网页,常用于我们不想打开浏览器但又想浏览网页的情况。 WebView的使用 WebVeiw的常用…

什么是WebView

WebView是Android中UI组件的一种,WebView基于webkit内核,不过由于兼容性的原因在Android5.0后改为了Chromium内核。
WebView可以用来展示网页,常用于我们不想打开浏览器但又想浏览网页的情况。

WebView的使用

WebVeiw的常用方法

加载网页的四种方式

loadUrl(String url)

 //打开百度网页webView.loadUrl("https://www.baidu.com/");//打开sdcard卡的html页面//webView.loadUrl("file://" + Environment.getExternalStorageDirectory() + "/1/index.html");//资源文件下的html页面//webView.loadUrl("file://android_asset/index.html");//设置在当前页面打开要显示的网页webView.setWebViewClient(new WebViewClient());

loadUrl(String url, Map<String, String> additionalHttpHeaders)
第一个参数是要加载网页的url,第二个参数是键值对形式的请求参数,会被加入到请求头中。

  webView.setWebViewClient(new WebViewClient() {@Overridepublic boolean shouldOverrideUrlLoading(WebView view, String url) {Map<String,String> reqHeaders = new HashMap<>();reqHeaders.put("android-webview-demo","testRequestHeaders");webView.loadUrl("https://www.baidu.com/");return super.shouldOverrideUrlLoading(view, url);}});

loadData(String data, String mimeType, String encoding)
可以将一段html代码加载到网页中

 webView.loadData("<h1>hello world</h1>","text/html","utf-8");

loadDataWithBaseURL(String baseUrl, String data, String mimeType, String encoding, String historyUrl)
这里要加载的网页的url是baseUrl+data,mimeType是响应类型,encoding是编码,historyUrl设置回退时回退到哪个网页

    webView.loadDataWithBaseURL("https://www.imooc.com/","<img src = \"static/img/index/logo2020.png\"/> <a href = \"https://www.baidu.com\">百度</a>","text/html","utf-8","https://www.sogou.com");webView.setWebViewClient(new WebViewClient());

控制网页的前进和后退

boolean canGoBack():是否可以后退;
boolean canGoForward():是否可以前进;
boolean canGoBackOrForward(int steps):是否可以前进或后退一定步数,负数代表后退,正数代表前进;
void clearHistory():清除历史;
void goBack():后退;
void goForward():前进;
void goBackOrForward(int steps):前进或后退一定步数,负数代表后退,正数代表前进;

public void onClear(View view) {webView.clearHistory();}public void onCanBack(View v) {Toast.makeText(this,String.valueOf(webView.canGoBack()),Toast.LENGTH_SHORT).show();}public void onGoBack(View v) {webView.goBack();}public void onCanGoForward(View v) {Toast.makeText(this,String.valueOf(webView.canGoForward()),Toast.LENGTH_SHORT).show();}public void onGoForward(View v) {webView.goForward();}public void onCanGoBackOrForward(View v) {int steps = Integer.valueOf(et.getText().toString());Toast.makeText(this,String.valueOf(webView.canGoBackOrForward(steps)),Toast.LENGTH_SHORT).show();}public void onGoBackOrForward(View v) {int steps = Integer.valueOf(et.getText().toString());webView.goBackOrForward(steps);}

WebView的状态管理

WebView的状态管理用于
WebView的
onPause():
onResume():
resumeTimers():
pauseTimers():
destroy():

WebSettings

使用WebSettings可以对webview进行配置和管理。
控制网页的缩放
setSupportZoom(boolean):是否支持缩放
setBuiltInZoomControls(boolean):设置内置的缩放控件
setDisplayZoomControls(boolean):是否隐藏原生的缩放控件
控制网页缓存策略
LOAD_CACHE_ONLY:永远不使用网络,只去本地缓存,没有缓存则不会加载;
LOAD_CACHE_ELSE_NETWORK:只要本地有缓存,无论是否过期都会去使用本地缓存,没有缓存才会去加载网络;
LOAD_DEFAULT:根据cache-control决定是否从网络获取;
LOAD_NO_CACHE:永远不使用缓存,只从网络获取;

  WebSettings settings = webView.getSettings();//设置要访问的页面可以运行jssettings.setJavaScriptEnabled(true);//设置可以进行缩放settings.setSupportZoom(true);settings.setBuiltInZoomControls(true);settings.setDisplayZoomControls(true);//设置缓存策略settings.setCacheMode(WebSettings.LOAD_CACHE_ONLY);

WebViewClient

WebViewClient处理加载时的各种回调通知。

方法签名作用
WebResourceResponse shouldInterceptRequest(WebViewview, String url)进行资源请求的时候回调
void onPageStarted(WebViewview, String url, Bitmap favicon)网页已经开始加载的时候回调
void onLoadResource(WebViewview, String url)加载网页资源之前回调
boolean shouldOverrideUrlLoading(WebView view, String url)webview将要加载新的url时进行回调
void onReceivedError(WebViewview, interrorCode, String description, String failingUrl)网页访问发生错误的时候回调
void onPageFinished(WebViewview, String url)网页加载完成的时候回调
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request)重载方法,在Android7.0以后才能使用
public WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request)重载方法,在Android5.0以上才能使用
void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error)重载方法,Android6.0及以上才能使用
shouldInterceptRequest方法会在onLoadResource方法之前被调用。
webView.setWebViewClient(new WebViewClient() {@Overridepublic void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {super.onReceivedError(view, request, error);}@Overridepublic void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {super.onReceivedError(view, errorCode, description, failingUrl);}/*** android7.0以上才可以使用,可以利用此方法进行方法拦截* @param view* @param request* @return*/@Overridepublic boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {return super.shouldOverrideUrlLoading(view, request);}@Overridepublic boolean shouldOverrideUrlLoading(WebView view, String url) {Map<String,String> reqHeaders = new HashMap<>();reqHeaders.put("android-webview-demo","testReqHeaders");webView.loadUrl("http://192.168.2.124:3000", reqHeaders);return super.shouldOverrideUrlLoading(view, url);}/*** android5.0以上才能调用* @param view* @param request* @return*/@Nullable@Overridepublic WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) {Log.d(TAG, "shouldInterceptRequest: 方法被调用了");return super.shouldInterceptRequest(view, request);}@Nullable@Overridepublic WebResourceResponse shouldInterceptRequest(WebView view, String url) {Log.d(TAG, "shouldInterceptRequest: 方法被调用了" + url);return super.shouldInterceptRequest(view, url);}@Overridepublic void onPageStarted(WebView view, String url, Bitmap favicon) {Log.d(TAG, "onPageStarted: 网页开始进行加载url: " + url);super.onPageStarted(view, url, favicon);}@Overridepublic void onLoadResource(WebView view, String url) {Log.d(TAG, "onLoadResource:网页开始加载资源url: " + url);super.onLoadResource(view, url);}@Overridepublic void onPageFinished(WebView view, String url) {Log.d(TAG, "onPageFinished: 网页已经加载完成: " + url);super.onPageFinished(view, url);}});

WebChromeClient

辅助webview去处理JavaScript对话框、标题、进度。

booleanonJsAlert(WebViewview, String url, String message, JsResultresult):在网页将要打开一个alert警告对话框的时候回调;
booleanonJsPrompt(WebViewview, String url, String message, String defaultValue, JsPromptResultresult):在网页将要打开一个prompt对话框的时候回调;
booleanonJsConfirm(WebViewview, String url, String message, JsResultresult):在网页将要打开一个confirm对话框的时候回调;

http://www.tj-hxxt.cn/news/60897.html

相关文章:

  • 网站备案期间可以访问吗代运营套餐价格表
  • 龙岩做网站改版找哪家公司最近时事热点新闻评论及点评
  • 上海网站设计哪家好乐事薯片软文推广
  • 产品宣传网站的重点网站收录入口
  • 百度网站上做推广受骗网络营销的基本方式有哪些
  • 建设政府网站的成本昆明百度关键词优化
  • 成都服务器维护郑州搜索引擎优化
  • 西安网站建设 企业建站平台搭建
  • 杭州做网站的好公司广告投放平台公司
  • 怎样做理财网站网络推广公司名字大全
  • 用vs2005做网站 怎样搭配色彩软件开发培训中心
  • 绵阳 网站开发从事网络营销的公司
  • 论坛网站建设源码下载网站更新seo
  • 零遁nas做网站长沙seo代理商
  • 本地做网站教程互联网登录的网站名
  • 仿做购物网站佛山网站建设方案咨询
  • 苏州做网站设计的公司短视频新媒体推广
  • 菜鸟怎么做网站营销模式有哪些
  • 招投标信息查询平台沈阳seo收费
  • 个人网站网页模板谷歌浏览器官网下载
  • 宝鸡做网站市场怎么样广东百度seo关键词排名
  • 没有备案做盈利性的网站违法吗第三波疫情将全面大爆发
  • 通用ppt模板免费下载百度关键词优化工具
  • 西安网站建设招骋在百度上打广告找谁
  • 做网站有哪些软件十大免费最亏的免费app
  • 品牌商城网站制作公司百度推广关键词匹配模式
  • 郑州网站建设哪家公司便宜长沙建站seo公司
  • 如何做 试题类 网站网站及推广
  • 木材板材网站制作方案东莞百度seo哪里强
  • 建设公司网站步骤线上商城的推广方案