使用 WebView 的 loadData 方法加载本地 utf-8 编码的网页不能正确显示中文
<?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>
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. */ @Override public 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 加载网页。运行结果
本博客内容,如需转载请务必保留超链接。Contact Me:Mail此处省略好几个字...