Home  >  Article  >  Web Front-end  >  Detailed explanation of how to load HTML code using WebView

Detailed explanation of how to load HTML code using WebView

高洛峰
高洛峰Original
2017-03-24 11:33:323350browse

When using EditText to display HTML strings, EditText will not perform any parsing of the HTML tags, but will directly display all HTML tags - just like displaying with ordinary Notepad; if the application wants to re- It is also possible to parse HTML strings and display them as HTML pages.

The loadData(String data, String mimeType, String encoding) method provided by WebView can be used to load and display HTML code, but in actual use, when it loads Chinese HTML content, WebView will Garbled characters will be displayed.

WebView also provides a loadDataWithBaseURL(String baseUrl, String data, String mimeType, String encoding, String historyUrl) method, which is an enhanced version of the loadData(String data, String mimeType, String encoding) method. It No garbled characters will be generated.

1. data: Specify the HTML code that needs to be loaded.

2. mimeType: Specify the MIME type of the HTML code. For HTML code, it can be specified as text/html.

3. Encoding: Specify the character set used for HTML code encoding. For example, specify GBK.

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.webkit.WebView;
 
public class ViewHtml extends Activity {
  WebView show;
 
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_view_html);
    //获取程序中的WebView组件
    show = (WebView) findViewById(R.id.show);
    StringBuilder sb = new StringBuilder();
    //拼接一段HTML代码
    sb.append("<html>");
    sb.append("<head>");
    sb.append("<title>Our Love</title>");
    sb.append("</head>");
    sb.append("<body>");
    sb.append("<h2>Love<a href=\"http://love.shiningchen.cc\">"
            +"Shining</a></h2>");
    sb.append("</body>");
    sb.append("</html>");
    //使用简单的loadData方法会导致乱码,可能是Android API的Bug
    //show.loadData(sb.toString(), "text/html", "utf-8");
    //加载、并显示HTML代码
    show.loadDataWithBaseURL(null,sb.toString(), "text/html", "utf-8", null);
  }
}

The above is the detailed content of Detailed explanation of how to load HTML code using WebView. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn