0

この件に関して多くの質問があることは知っていますが、私の問題に完全に適合するものを見つけることができないため、少なくとも問題のすべての側面をここに集めるためにこの質問を開きます.

はじめましょう!イメージビューがあり、このイメージビューは固定サイズでなければなりません:

<ImageView
        android:id="@+id/my_image"
        android:layout_width="250dp"
        android:layout_height="170dp"
        android:layout_gravity="center_horizontal"
        android:layout_marginBottom="20dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="10dp"
        android:contentDescription="@string/cell_item_image"
        android:scaleType="fitXY" />

私のビットマップはURLから取得され、.jpg形式であるため、私のコードは次のとおりです。

bitmap = BitmapFactory.decodeStream(conn.getInputStream());

その寸法は 435x312 ピクセルで、私の画面密度よりも大きいため、スケーリングしても品質が低下することはありません...難読化された画像が表示されるのはなぜですか?

ビットマップを再スケーリングして品質を維持する方法はありますか?

多分それはスケールタイプのfitXYですか?しかし、コードまたはレイアウトでのスケーリングの違いは何ですか? 多くの人がコードでそれを行っているのを見ますが、試してみるとまったく同じ結果が得られます

4

1 に答える 1

1

編集:.jpg部分を読んでください

試す:

Options options = new BitmapFactory.Options();
options.inScaled = false;
Bitmap source = BitmapFactory.decodeResource(a.getResources(), path, options);

これがうまくいかない場合は、スケーリングせずに画像を表示してみてください (この方法で、ぼかし、画像の読み込み、または表示/スケーリングの原因を確認できます)。

于 2012-09-23T13:27:33.780 に答える