Android控件WebView(浏览器)常用功能(图片、缩放)例子介绍
Android系统默认提供WebView控件(view)来在应用中内嵌网页,使其具有浏览器的功能。WebView提供了灵活的配置来让用户自定义相关功能。前面说了关于Android中WebView实现Javascript调用Java类方法,下面在代码中对其他功能做详细描述:
package com.orgcent.webview; import android.app.Activity; import android.os.Bundle; import android.webkit.JsPromptResult; import android.webkit.JsResult; import android.webkit.WebChromeClient; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; import android.webkit.WebSettings.LayoutAlgorithm; public class AndroidWebViewActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); WebView content_wv = (WebView) findViewById(R.id.content_wv); WebSettings ws = content_wv.getSettings(); ws.setJavaScriptEnabled(true); // 设置支持javascript脚本 ws.setAllowFileAccess(true); // 允许访问文件 ws.setBuiltInZoomControls(true); // 设置显示缩放按钮 ws.setSupportZoom(true); //支持缩放 /** * 用WebView显示图片,可使用这个参数 * 设置网页布局类型: * 1、LayoutAlgorithm.NARROW_COLUMNS : 适应内容大小 * 2、LayoutAlgorithm.SINGLE_COLUMN:适应屏幕,内容将自动缩放 */ ws.setLayoutAlgorithm(LayoutAlgorithm.NARROW_COLUMNS); ws.setDefaultTextEncodingName("utf-8"); //设置文本编码 ws.setAppCacheEnabled(true); ws.setCacheMode(WebSettings.LOAD_DEFAULT);//设置缓存模式 //添加Javascript调用java对象 content_wv.addJavascriptInterface(this, "java2js"); content_wv.setWebViewClient(new WebViewClientDemo()); content_wv.setWebChromeClient(new WebViewChromeClientDemo()); //设置打开的网页 content_wv.loadUrl("http://orgcent.com"); //使用WebView来显示图片 content_wv.loadData("<img src='http://orgcent.com'/>", "text/html", "utf8"); } private class WebViewClientDemo extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url);// 当打开新链接时,使用当前的 WebView,不会使用系统其他浏览器 return true; } } private class WebViewChromeClientDemo extends WebChromeClient { // 设置网页加载的进度条 public void onProgressChanged(WebView view, int newProgress) { } // 获取网页的标题 public void onReceivedTitle(WebView view, String title) { } // JavaScript弹出框 @Override public boolean onJsAlert(WebView view, String url, String message, JsResult result) { return super.onJsAlert(view, url, message, result); } // JavaScript输入框 @Override public boolean onJsPrompt(WebView view, String url, String message, String defaultValue, JsPromptResult result) { return super.onJsPrompt(view, url, message, defaultValue, result); } // JavaScript确认框 @Override public boolean onJsConfirm(WebView view, String url, String message, JsResult result) { return super.onJsConfirm(view, url, message, result); } } }转载: http://orgcent.com/android-webview-image-zoom-example/ | 萝卜白菜的博客
相关推荐
icewizardry 2014-04-10
dangai00 2020-07-18
xhpscdx 2020-05-31
chenxiangpeng 2020-04-30
ncuboy0wsq 2020-03-27
学习web前端 2020-03-23
APCDE 2020-03-04
歆萌 2020-03-03
csdnuuu 2020-01-04
水龙吟的备忘录 2019-11-18
元元 2019-11-17
androidstudyroom 2019-11-08
czpaex 2011-09-11
OldSoldier 2011-08-18
wangdaiying 2011-05-26
qixiang0 2019-08-24