WebView中loadUrl 和 loadData

1、LoadUrl 直接显示网页内容(单独显示网络图片)
2、LoadData 显示中文网页内容(含空格的处理)
APK 包内文件
1、LoadUrl 显示APK 中Html 和图片文件
2、LoadData(loadDataWithBaseURL)显示APK 中图片和文字混合的Html 内容

XML代码:

  1. <SPAN style="FONT-SIZE: 18px"><?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:layout_width="fill_parent"  
  4.     android:layout_height="fill_parent"  
  5.     android:orientation="vertical" >  
  6.   
  7.     <WebView  
  8.         android:id="@+id/WebView"  
  9.         android:layout_width="fill_parent"  
  10.         android:layout_height="fill_parent" />  
  11.   
  12. </LinearLayout></SPAN>  
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <WebView
        android:id="@+id/WebView"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" />

</LinearLayout>


JAVA代码:

  1. <SPAN style="FONT-SIZE: 18px">package cn.coolworks;  
  2. import java.net.URLEncoder;  
  3. import android.app.Activity;  
  4. import android.os.Bundle;  
  5. import android.webkit.WebView;  
  6. public class Example_WebView extends Activity {  
  7. WebView WebView;  
  8. final String mimeType = "text/html";  
  9. final String encoding = "utf-8";  
  10. /** Called when the activity is first created. */  
  11. @Override  
  12. public void onCreate(Bundle savedInstanceState) {  
  13. super.onCreate(savedInstanceState);  
  14. setContentView(R.layout.main);  
  15. WebView = (WebView) findViewById(R.id.WebView);  
  16. WebView.getSettings().setJavaScriptEnabled(true);  
  17. //   
  18. //webHtml();   
  19. //   
  20. //webImage();   
  21. //   
  22. //localHtmlZh();   
  23. //   
  24. //localHtmlBlankSpace();   
  25. //   
  26. //localHtml();   
  27. //   
  28. // localImage();   
  29. //   
  30. localHtmlImage();  
  31. }  
  32. /** 
  33. * 直接网页显示 
  34. */  
  35. private void webHtml() {  
  36. try {  
  37. WebView.loadUrl("http://www.google.com");  
  38. catch (Exception ex) {  
  39. ex.printStackTrace();  
  40. }  
  41. }  
  42. /** 
  43. * 直接网络图片显示 
  44. */  
  45. private void webImage() {  
  46. try {  
  47. WebView  
  48. .loadUrl("http://www.gstatic.com/codesite/ph/images/code_small.png");  
  49. catch (Exception ex) {  
  50. ex.printStackTrace();  
  51. }  
  52. }  
  53. /** 
  54. * 中文显示 
  55. */  
  56. private void localHtmlZh() {  
  57. try {  
  58. String data = "测试含有中文的Html 数据";  
  59. // utf-8 编码处理(在SDK1.5 模拟器和真实设备上都将出现乱码,SDK1.6 上能正常显示)   
  60. //WebView.loadData(data, mimeType, encoding);   
  61. // 对数据进行编码处理(SDK1.5 版本)   
  62. WebView.loadData(URLEncoder.encode(data, encoding), mimeType,  
  63. encoding);  
  64. catch (Exception ex) {  
  65. ex.printStackTrace();  
  66. }  
  67. }  
  68. /** 
  69. * 中文显示(空格的处理) 
  70. */  
  71. private void localHtmlBlankSpace() {  
  72. try {  
  73. String data = " 测试含有空格的Html 数据";  
  74. // 不对空格做处理   
  75. WebView.loadData(URLEncoder.encode(data, encoding), mimeType,  
  76. encoding);  
  77. //WebView.loadData(data, mimeType, encoding);   
  78. // 对空格做处理(在SDK1.5 版本中)   
  79. WebView.loadData(URLEncoder.encode(data, encoding).replaceAll(  
  80. "\+"" "), mimeType, encoding);  
  81. catch (Exception ex) {  
  82. ex.printStackTrace();  
  83. }  
  84. }  
  85. /** 
  86. * 显示本地图片文件 
  87. */  
  88. private void localImage() {  
  89. try {  
  90. // 本地文件处理(如果文件名中有空格需要用+来替代)   
  91. WebView.loadUrl("file:///android_asset/icon.png");  
  92. catch (Exception ex) {  
  93. ex.printStackTrace();  
  94. }  
  95. }  
  96. /** 
  97. * 显示本地网页文件 
  98. */  
  99. private void localHtml() {  
  100. try {  
  101. // 本地文件处理(如果文件名中有空格需要用+来替代)   
  102. WebView.loadUrl("file:///android_asset/test.html");  
  103. catch (Exception ex) {  
  104. ex.printStackTrace();  
  105. }  
  106. }  
  107. /** 
  108. * 显示本地图片和文字混合的Html 内容 
  109. */  
  110. private void localHtmlImage() {  
  111. try {  
  112. String data = "测试本地图片和文字混合显示,这是APK 里的图片";  
  113. // SDK1.5 本地文件处理(不能显示图片)   
  114. // WebView.loadData(URLEncoder.encode(data, encoding), mimeType,   
  115. // encoding);   
  116. // SDK1.6 及以后版本   
  117. // WebView.loadData(data, mimeType, encoding);   
  118. // 本地文件处理(能显示图片)   
  119. WebView.loadDataWithBaseURL("about:blank", data, mimeType,  
  120. encoding, "");  
  121. catch (Exception ex) {  
  122. ex.printStackTrace();  
  123. }  
  124. }  
  125. }  
  126.   
  127. </SPAN>  
package cn.coolworks;
import java.net.URLEncoder;
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;
public class Example_WebView extends Activity {
WebView WebView;
final String mimeType = "text/html";
final String encoding = "utf-8";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
WebView = (WebView) findViewById(R.id.WebView);
WebView.getSettings().setJavaScriptEnabled(true);
//
//webHtml();
//
//webImage();
//
//localHtmlZh();
//
//localHtmlBlankSpace();
//
//localHtml();
//
// localImage();
//
localHtmlImage();
}
/**
* 直接网页显示
*/
private void webHtml() {
try {
WebView.loadUrl("http://www.google.com");
} catch (Exception ex) {
ex.printStackTrace();
}
}
/**
* 直接网络图片显示
*/
private void webImage() {
try {
WebView
.loadUrl("http://www.gstatic.com/codesite/ph/images/code_small.png");
} catch (Exception ex) {
ex.printStackTrace();
}
}
/**
* 中文显示
*/
private void localHtmlZh() {
try {
String data = "测试含有中文的Html 数据";
// utf-8 编码处理(在SDK1.5 模拟器和真实设备上都将出现乱码,SDK1.6 上能正常显示)
//WebView.loadData(data, mimeType, encoding);
// 对数据进行编码处理(SDK1.5 版本)
WebView.loadData(URLEncoder.encode(data, encoding), mimeType,
encoding);
} catch (Exception ex) {
ex.printStackTrace();
}
}
/**
* 中文显示(空格的处理)
*/
private void localHtmlBlankSpace() {
try {
String data = " 测试含有空格的Html 数据";
// 不对空格做处理
WebView.loadData(URLEncoder.encode(data, encoding), mimeType,
encoding);
//WebView.loadData(data, mimeType, encoding);
// 对空格做处理(在SDK1.5 版本中)
WebView.loadData(URLEncoder.encode(data, encoding).replaceAll(
"\+", " "), mimeType, encoding);
} catch (Exception ex) {
ex.printStackTrace();
}
}
/**
* 显示本地图片文件
*/
private void localImage() {
try {
// 本地文件处理(如果文件名中有空格需要用+来替代)
WebView.loadUrl("file:///android_asset/icon.png");
} catch (Exception ex) {
ex.printStackTrace();
}
}
/**
* 显示本地网页文件
*/
private void localHtml() {
try {
// 本地文件处理(如果文件名中有空格需要用+来替代)
WebView.loadUrl("file:///android_asset/test.html");
} catch (Exception ex) {
ex.printStackTrace();
}
}
/**
* 显示本地图片和文字混合的Html 内容
*/
private void localHtmlImage() {
try {
String data = "测试本地图片和文字混合显示,这是APK 里的图片";
// SDK1.5 本地文件处理(不能显示图片)
// WebView.loadData(URLEncoder.encode(data, encoding), mimeType,
// encoding);
// SDK1.6 及以后版本
// WebView.loadData(data, mimeType, encoding);
// 本地文件处理(能显示图片)
WebView.loadDataWithBaseURL("about:blank", data, mimeType,
encoding, "");
} catch (Exception ex) {
ex.printStackTrace();
}
}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值