4

AndroidアプリのWebViewに画像を表示しようとしています。画像はAndroidプロジェクトのアセットフォルダーにあります。HTMLはプログラムで作成され、次の画像参照が含まれています。

HTMLは、以下を使用してWebViewにロードされます。

webView.loadDataWithBaseURL(urlStr、htmlText、 "text / html"、 "utf-8"、urlStr);

urlStr=他のリソースを見つけるために必要なベースURL。htmlText=プログラムでHTMLを生成する

WebViewはHTMLを正常にロードしますが、画像は「欠落」として表示されます。アセット内のその場所に画像が存在することを確認しました。それにもかかわらず、WebViewには表示されません。

私はこれがうまくいくはずだと言っている多くの投稿やチュートリアルを見てきましたが、私にとってはそうではありません。これは3.2Androidタブレット上にあります。これがAndroidの一部のバージョンでのみ機能するかどうか誰かが知っていますか?私の場合、なぜそれが機能しないのかについて何か考えはありますか?ありがとう。

4

2 に答える 2

4

OK、私はついにこれを理解しました。どうやらAndroidコードのどこかにバグがあり、画像パスにスペースが含まれていると失敗します。それで:

<img src="file:///android_asset/SkyInfo/images/Deep Sky/M13-Misti.jpg">

画像の読み込みに失敗します。次のように変更した場合:

<img src="file:///android_asset/SkyInfo/images/DeepSky/M13-Misti.jpg">

それは機能します(ディレクトリの名前を変更したと仮定します)。

ノート:

  • これは、アセットから読み取る場合にのみ問題になります。
  • Android4.xの問題のようです。4.0.4および4.3バージョンでこの問題が発生しましたが、2.3.xバージョンではスペースは問題なく機能します。

Googleに来てください、ディレクトリ名のスペースは15年間一般的です。プログラムを入手してください。

于 2012-03-22T23:31:38.780 に答える
4

ここに画像の説明を入力

 webView.loadDataWithBaseURL("file:///android_asset/", sourse, "text/html", "UTF-8", null);
于 2013-06-10T11:30:50.320 に答える