как показать содержимое html в webview с помощью android


Ниже приведен мой html-контент, который я хочу показать в webview с помощью Android sdk. Он будет отображать только

/ / пожалуйста

Но когда я помещаю этот HTML-контент в браузер, он показывает по-другому.

<br /><br />Read the handouts please for tomorrow.<br /><br /><!--homework help homework


help help with homework homework assignments elementary school high school middle school



// --><font color="#60c000" size="4"><strong>Please!</strong></font>

Пожалуйста, предложите, как решить эту проблему

У меня есть еще одна проблема, что в HTML-контенте есть тег

<img src="http://www.homeworknow.com/hwnow/upload/images/tn_star300.gif" border="0" />

В этом изображения не показывает.

3 25

3 ответа:

  1. Используйте web.loadDataWithBaseURL вместо web.loadData (и не забудьте экранировать строки там, где это необходимо)
  2. Вам необходимо добавить разрешение интернета для загрузки изображений и просмотра их в файле манифеста.

Этот пример работает для меня:

public class SimpleMusicStream extends Activity {
    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        setContentView(R.layout.main);

        WebView wv = (WebView) findViewById(R.id.WebView01);        

        final String mimeType = "text/html";
        final String encoding = "UTF-8";
        String html = "<br /><br />Read the handouts please for tomorrow.<br /><br /><!--homework help homework" +
                "help help with homework homework assignments elementary school high school middle school" +
                "// --><font color='#60c000' size='4'><strong>Please!</strong></font>" +
                "<img src='http://www.homeworknow.com/hwnow/upload/images/tn_star300.gif'  />";


        wv.loadDataWithBaseURL("", html, mimeType, encoding, "");
    }

}

И не забудьте добавить:

<uses-permission android:name="android.permission.INTERNET"></uses-permission>

В вашем AndroidManifest.xml-файл

Либо вы можете сделать это, как описано выше, либо поместить html-файл в папку asset и использовать его для отображения

view.loadUrl("file:///android_asset/FILENAME.html");

Для отображения изображения вы можете сделать это как

 String str= " img src=\"http://www.homeworknow.com/hwnow/upload/images/tn_star300.gif\" alt=\"this is img\"ALIGN=\"right\"/>";
    wv.loadData(str, "text/html", "utf-8");