72x72ピクセルの外部ストレージから画像を表示したいと思います。 私のデバイスは高密度です。 イメージビューの高さと幅は "wrap_content"です。Android上の外部ストレージから読み込むときの画像サイズの問題
イメージをロードするかURLを使用すると、結果が異なります。
このようなURLを使用すると、結果は約48x48pxになります。
imageView.setImageURI(Uri.fromFile(file));
私はビットマップをロードする場合、期待どおりの結果が72x72 pxのである:
InputStream is = context.getContentResolver().openInputStream(Uri.fromFile(file));
Bitmap b = BitmapFactory.decodeStream(is, null, null);
is.close();
iv2.setImageBitmap(b);
あなたがここでの結果を見ることができます:
私はsetImageURI
を使用することができればそれが良いだろうあらかじめ画像を にプリロードしていないと、画像もappwidgetsに表示したいと思います。 違いの原因は何ですか、どうすれば避けることができますか?
@Waynn:あなたはインラインイメージ(http://stackoverflow.com/privileges/new-user)を持っています、それ以降の編集でそれをしてください。 :) – sarnold
できます!申し訳ありませんが、私はいつも編集するのも怖いです。 :) –
違いは 'imageView.setImageURI()'によって 'BitmapFactory.Options.inScreenDensity'が' DisplayMetrics.DENSITY_DEVICE'に設定されています。これは異なるスケーリングを引き起こします。 – zapl