私はすでにこのスレッドを見ました:ImageView AdjustViewBoundsは機能していませんが、私の状況には当てはまりません。
基本的に、adjustViewBoundsは機能していません。次のことを想定しましょう。
square_icon => 1000x1000
rectangle_icon => 400x100
device height => 1000
だから私がしたいのは、次の寸法の4つのアイコンの垂直方向の積み重ねです。
square_icon = 400x400
rectangle_icon = 400x100
square_icon = 400x400
rectangle_icon = 400x100
しかし、何が起こっているのかというと、square_iconが可能なすべてのスペースを占めていないということです...そしてrectangle_iconは400x100ではなく400x200のようになっていますか?画像が誤ったアスペクト比で拡大縮小されておらず、ビューに空白スペースが追加されているだけです(scalingTypeは、スペースが上、下、または両方のいずれにあるかを決定します)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="0dip"
android:layout_weight="1"
android:adjustViewBounds="true"
android:src="@drawable/square_icon" />
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:src="@drawable/rectangle_icon" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="0dip"
android:layout_weight="1"
android:adjustViewBounds="true"
android:src="@drawable/square_icon" />
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:src="@drawable/rectangle_icon" />
</LinearLayout>