У меня есть две строки вертикальной таблицы со свойством layout_weight = "1"
, поэтому они занимают одинаковое пространство по вертикали, но если я добавлю тег «ImageView» в теги этих таблиц со свойством android:src
, он изменит размер родительского тега tableRow в соответствии с реальный размер, поэтому есть ли способ сохранить эти равные высоты TableRow
без указания точного размера ImageView или TableRow
Код
рабочий код (упрощенная версия)
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center">
<TableRow
android:layout_width="match_parent"
android:layout_weight="1">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/white" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_weight="1">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/black" />
</TableRow>
</TableLayout>
Но как только я добавлю android:src
к свойству ImageViews и выберу изображение, размер родительского элемента <TableRow>
изменится в соответствии с размером этого изображения, есть ли способ, которым изображение просто вписывается в текущий размер родительского `и не меняет его родительский размер?
на основе ответа Манишика Я попробовал этот код, но он тоже не работал
<TableLayout xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1"
android:measureWithLargestChild="true"
xmlns:android="http://schemas.android.com/apk/res/android">
<TableRow
android:layout_width="match_parent"
android:layout_height="0dp"
android:background="@android:color/holo_green_light"
android:gravity="center"
android:layout_weight=".5">
<ImageView
android:layout_width="match_parent"
android:src="@drawable/ic_launcher_background"
android:background="@android:color/white"/>
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight=".5"
android:gravity="center"
android:background="@android:color/holo_blue_bright">
<ImageView
android:layout_width="match_parent"
tools:srcCompat="@tools:sample/backgrounds/scenic"
android:background="@android:color/black"/>
</TableRow>
</TableLayout>
Спасибо!