Есть ли способ получить изображения, затрагивающие, как на этом изображении, не догадываясь о высотах каждого горизонтального LinearLayout?Android: Как получить этот макет
Как вы можете видеть из моего XML я должен был угадать высоту LinearLayout на 144dp, чтобы получить этот эффект, есть лучший способ, который будет работать на различных размерах экрана?
<LinearLayout
android:id="@+id/LinearLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/LinearLayout01"
android:layout_width="match_parent"
android:layout_height="144dp" >
<ImageView
android:id="@+id/ImageView01"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:src="@drawable/ic_sport" />
<ImageView
android:id="@+id/ImageView02"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:src="@drawable/ic_science" />
</LinearLayout>
<LinearLayout
android:id="@+id/LinearLayout02"
android:layout_width="match_parent"
android:layout_height="144dp"
android:layout_gravity="fill_horizontal" >
<ImageView
android:id="@+id/imageView03"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:src="@drawable/ic_science" />
<ImageView
android:id="@+id/imageView04"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:src="@drawable/ic_sport" />
</LinearLayout>
<LinearLayout
android:id="@+id/LinearLayout03"
android:layout_width="match_parent"
android:layout_height="144dp"
android:layout_gravity="fill_horizontal" >
<ImageView
android:id="@+id/ImageView05"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:src="@drawable/ic_sport" />
<ImageView
android:id="@+id/ImageView06"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:src="@drawable/ic_science" />
</LinearLayout>
</LinearLayout>
Если возможно, я предпочел бы иметь возможность сделать это в формате XML. Изображения квадратные, поэтому они должны заполнять ширину и все еще быть пропорционально. Я могу почти сделать это с fitXY, но это просто растягивает их ширину, а не их высоту.
Как вы угадываете высоту линейного макета? Вы имеете в виду, что вы угадываете высоту того, что линейный макет будет зависеть от высоты изображений в них? Можете ли вы поместить каждый горизонтальный линейный макет в вертикальную линейную компоновку и добиться того, чего хотите? –
Я увеличил высоту LinearLayout01 до тех пор, пока изображения не заполнили LinearLayout (линейная компоновка стала квадратной) – Edd
@cskoala Использование вертикальных линий LinearLayouts - хороший вариант. Он заполняет экран вертикально небольшими промежутками между двумя вертикальными LinearLayouts. Я могу, вероятно, компенсировать это, используя scaleXY – Edd