私はwidth:match_parentとheight:wrap_contentのimageViewを持っています。私は全幅の画像を望み、高さの比率を維持します。ユニバーサル画像ローダーキープレシオ
私は、自分のimageViewにadjustviewboundsとcenter_cropを設定し、imageScaleTypeをImageScaleType.EXACTLY_STRETCHEDに設定すると言うこのリンク(https://github.com/nostra13/Android-Universal-Image-Loader/pull/62)に従います。このコードでは
DisplayImageOptions defaultOptions = new DisplayImageOptions.Builder()
.cacheInMemory()
.cacheOnDisc()
.showImageForEmptyUri(R.drawable.cache_waiting)
.showImageOnFail(R.drawable.cache_waiting)
.showStubImage(R.drawable.cache_waiting)
.imageScaleType(ImageScaleType.EXACTLY_STRETCHED)
.build();
setAdjustViewBounds(true);
setScaleType(ScaleType.CENTER_CROP);
ImageLoader.getInstance().displayImage(img.getUrl(), this,defaultOptions);
、ImageViewののほとんどは白です:
はので、私はそれを行います。 logcatは、ビットマップが大きすぎると伝えます(2560,1120)。どのようにイメージの比率をUILに保つことができますか?
おかげで、
上記のコードを入れた場所は? – NOSTRA
ImageViewのビルドメソッドにこのコードを挿入しました。このビルドメソッドは、たとえばこのフラグメントの作成中にフラグメントによって呼び出されます。 – FUBUs
私は 'CENTER_CROP'が正しい縮尺タイプではないと思います。デフォルトのスケールタイプを使用すると、「大きすぎるビットマップ」の問題を防ぐことができます。 – NOSTRA