質問

I am投HTMLへのwebviewを描画するHTMLい負荷の画像となってい /res/drawable.

していま /res/drawable/my_image.png コードなどのこ

final WebView browser = (WebView) findViewById(R.id.my_webview);
String html = new MyHelper(myObject).getHtml();
browser.loadDataWithBaseURL("", html, "text/html", "UTF-8", "");

の文字列 html がようなもの:

<html><head>
<h1>Here is the image</h1>
<img src="my_image.png" />
</head><html>

それでは、どうすればそのときのイメージ src 属性を参照してのイメージ /res/drawable?

役に立ちましたか?

解決

これはアンドロイド2.2

で働いていました
<img src = "file:///android_res/drawable/q1.png" />
q1.pngはRESである

/描画可能-hdpiフォルダ

他のヒント

私はWebViews / HTMLについて多くを知らない認めるが、あなたは、このために、より複雑なルートを取っているように思えます。 HTMLファイルをロードするための簡単な方法があります。それは次のように呼ばれることができ、あなたの資産はフォルダに入れ、かつます。

WebView webView = new WebView(this);
webView.loadUrl("file:///android_asset/index.html");
setContentView(webView);

は明らかにあなたのレイアウトは、あなたが直接setContentView()を使用することはできませんので、あなたがより多くだけのWebViewよりも持っているように、より複雑であるが、それは基本的な考え方です。そして、そのHTMLファイル内の画像を参照するために、私のようなので、<img>タグを使用します:

<img src="res/drawable/icon.png"/>

あなたのためにその仕事していますか?

user302750,

貴方法が間違っています。 res/drawable/banner300.jpg すべき file:///android_res/drawable/banner300.jpg.

banner300.jpg できるのは以下の場所にあるお客様のプロジェクトには、androidを自動的に負荷の一つのデバイスだ。

  • res/drawable/banner300.jpg
  • res/drawable-ldpi/banner300.jpg
  • res/drawable-mdpi/banner300.jpg
  • res/drawable-hdpi/banner300.jpg
  • res/drawable-xhdpi/banner300.jpg

assets フォルダがジェネリックの資源が必要なアプリケーションです。一例が、XSLテンプレートのものです。

MikeNereson、ご回答問題についても設備は、施設内または近辺に描資源に含まれる res ディレクトリです。

以下に例を示しますから、自分のプロジェクト.Html出力し、まさにこのように:

<img src="file:///android_res/drawable/stats_btn.png"/>

ご使用の場合は ldpi 装置を取得します。 ldpi 画像を使用する場合は、 hdpi または mdpi, 人にとって適切な方です。Androidを解決す file:///android_res/drawable/stats_btn.png で、かつ以下のいずれかの資源をいった。

  • ./res/drawable-ldpi/stats_btn.png
  • ./res/drawable-hdpi/stats_btn.png
  • ./res/drawable-mdpi/stats_btn.png
私のテストパスから、「ファイル:///android_res/drawable/q1.png」のみ2.2以降で動作します。エラーが見つかりませんファイルを与える2.1。資産へのリソースの移動動作しますが、あなたが描画可能な機能(あなたは、各フォルダ内の画像のコピーが必要だろうという意味...)を利用したい場合には、本当に現実的ではありません。

回答を伴うファイル://Urlが仕事としてのAndroid4.0.見応え この質問.それは根拠情報等回答に関 こちらの.

私は正確に同じ問題を抱えているが、どちらもres/drawableの画像ファイル置く(私が最初に作成する必要がありました、描画可能-hdpi、-ldpiと-mdpiは、既存の持っていたhust I)またはfile:///asset/のURLは私のために働い使用します。

ここで私は何をすべきかです。

活動:

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        mWebView = (WebView) findViewById(R.id.webview);
        mWebView.getSettings().setJavaScriptEnabled(true);
        String summary = "<html><body><div style=\"background:red; width:300px; height:50px;\"></div><img src=\"res/drawable/banner300.jpg\"/></body></html>";
        mWebView.loadData(summary, "text/html", "utf-8");
次にres/drawableに私がbanner300.jpgを置く - それは表示されません。任意のアイデア?

あなたはあなたのようなドローアブルをロードし、あなたのコードのどこだろう... http://developer.android.com/guide/topics/resources/drawable -resource.htmlする

Resources res = getResources();
Drawable drawable = res.getDrawable(R.drawable.myimage);

また@MikeNeresonアンドロイドを使用して、あなたは直接の資産ディレクトリやSDカードに配置されているRAWファイルにのみアクセスすることができます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top