六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 45|回复: 0

使用 WebView 的 loadData 方法加载本地 utf-8 编码的网页不能正确显示中文

[复制链接]

升级  48.67%

31

主题

31

主题

31

主题

秀才

Rank: 2

积分
123
 楼主| 发表于 2013-1-15 02:46:01 | 显示全部楼层 |阅读模式
例子工程使用 UTF-8 编码, SDK version 1.5
 
main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical" android:layout_width="fill_parent"android:layout_height="fill_parent"><WebView android:id="@+id/webview_1" android:layout_width="fill_parent"android:layout_height="fill_parent" android:layout_weight="1.0"/><WebView android:id="@+id/webview_2" android:layout_width="fill_parent"android:layout_height="fill_parent"android:layout_weight="1.0"/></LinearLayout> Main.java
package cn.yo2.aquarium.webviewtest;import android.app.Activity;import android.os.Bundle;import android.webkit.WebView;public class Main extends Activity {/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);String data = "<a href=\"http://sian.com/msnportal/redirectTitle.do?id=1\">中文 utf-8 编码</a>";WebView webView1 = (WebView) findViewById(R.id.webview_1);webView1.loadData(data, "text/html", "utf-8");WebView webView2 = (WebView) findViewById(R.id.webview_2);webView2.loadDataWithBaseURL("", data, "text/html", "utf-8", "");}}这里纵向放置了两个 WebView, 上面的 webView1 使用  loadData 加载网页,下面的 webView2 使用 loadDataWithBaseURL 加载网页。运行结果

使用 WebViewloadData 方法加载本地 utf-8 编码的网页不能正确显示中文。而使用 loadDataWithBaseURL 方法,中文正常。不知道是不是一个BUG
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表