Картинка из Assets в HTML не грузится

239
07 апреля 2017, 21:27

Делаю так:

WebView wv_scr4;
String txtHTML = "<html><body>" +
        "<img src=\"file:///android_asset/madagaskar.jpg\"><br>"+
        "<p align=\"center\">Page HTML</p>"+
        "</body></html>";
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    wv_scr4 = (WebView) findViewById(R.id.wv);
    wv_scr4.getSettings().setJavaScriptEnabled(true);
    wv_scr4.getSettings().setSupportZoom(true);
    wv_scr4.getSettings().setBuiltInZoomControls(true);
    wv_scr4.setWebViewClient(new WebViewClient());
    wv_scr4.getSettings().setDefaultTextEncodingName("utf-8");
}
public void onCl_Btn(View v) {
    Log.d("MyLog","txtHTML "+txtHTML);
    try { wv_scr4.loadData(txtHTML,"text/html; charset=UTF-8", null);
    } finally { Log.d("MyLog","LoadWV() - Загрузка не удалась"); }
}

Результат: на экране текст "Page HTML", картинки нет, в логах "LoadWV() - Загрузка не удалась". Файл с картинкой в Assets (AndroidStudio) присутствует.

Answer 1

Вот так надо

String txtHTML = "<html><body>" +
    "<img src=\"madagaskar.jpg\"><br>"+
    "<p align=\"center\">Page HTML</p>"+
    "</body></html>";
webView.loadDataWithBaseURL("file:///android_asset/", txtHTML, "text/html", "utf-8", null);

Ссылка на картинку должна быть относительной.

READ ALSO
Что это за алгоритм (GOST)?

Что это за алгоритм (GOST)?

Встретился вопрос: как реализовать алгоритм GOST?

268
как сделать чтобы картинка взял цвет заднего фона

как сделать чтобы картинка взял цвет заднего фона

есть фон такой из личного блога Билла Гейтса там как видите 2 фотки они приняли цвет заднего фона оранжевый(на одном он с женой в другом какой...

358
vue заполнить template из json

vue заполнить template из json

имеется json такого вида

190