2012-01-29 20 views
5

ボーダーを含む画像を表示したいと思います。以下の解決策は、一部の画像では問題なく動作しますが、他の画像では問題ありません。アンドロイドのAndroidでの画像のスケールが不一致:scaleType = "fitCenter"

これまでのところ私の推測では、小さな画像ではうまく動作しますが、大きな画像ではうまく動作しません。

小さな画像では、2ピクセル境界で画像がうまく表示されます。大きな画像では背景が高すぎます。

私は2000 * 400から200 * 40のように手動で拡大縮小した画像でこれをテストしていました。これは同じ画像で、プリスケールされました。

大きな画像は小さな画像と同じようにスケールされません。

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:background="#ffffff" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:orientation="vertical" 
       android:gravity="center" > 

    <ImageView 
      android:id="@+id/testimage" 
      android:background="#000000" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:src="@drawable/testimage2" 
      android:padding="2dip" 
      android:scaleType="fitCenter" 
      /> 
</LinearLayout> 
+0

scaleTypeのすべての組み合わせを試してみるとよいでしょう。 –

+0

それは私がやったことであり、fitCenterで終わりました。私はそれが正しいものだと確信していましたが、そうではありませんでした。 – tzrnee

答えて

5

scaletypeを削除し、ImageViewにandroid:adjustViewBounds = "true"を使用します。

+0

うん、それはうまく動作します。どうも! – tzrnee

関連する問題