2013-06-03 11 views
7

私は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に保つことができますか?

おかげで、

+0

上記のコードを入れた場所は? – NOSTRA

+0

ImageViewのビルドメソッドにこのコードを挿入しました。このビルドメソッドは、たとえばこのフラグメントの作成中にフラグメントによって呼び出されます。 – FUBUs

+0

私は 'CENTER_CROP'が正しい縮尺タイプではないと思います。デフォルトのスケールタイプを使用すると、「大きすぎるビットマップ」の問題を防ぐことができます。 – NOSTRA

答えて

2

私はあなたも設定します。しかし、ImageViewは:

<ImageView 
    android:id="@+id/thumb_item" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:adjustViewBounds="true" 
    android:scaleType="fitCenter" /> 
関連する問題