У меня есть LinearLayout, который имеет четыре вида, расположенных горизонтально.Первый и последний компонент имеют заданный размер.Для внутренних двух представлений я хочу просто поделиться доступным пространством 50:50.Я установил для каждого из них вес «1», но при разметке представлений их размеры различаются в зависимости от содержимого, которое они содержат.
Вот мой макет XML для справки.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/status"
android:src="@drawable/white"
android:paddingRight="10dip"
android:layout_height="35dip"
android:layout_width="35dip">
</ImageView>
<TextView android:id="@+id/name"
android:text="Name"
android:layout_height="fill_parent"
android:layout_toRightOf="@id/status"
android:layout_width="wrap_content"
android:layout_weight="1"
android:textSize="25dip">
</TextView>
<TextView android:id="@+id/description"
android:text="Description"
android:layout_toRightOf="@id/name"
android:layout_height="fill_parent"
android:layout_width="wrap_content"
android:layout_weight="1"
android:textSize="25dip">
</TextView>
<TextView android:id="@+id/time"
android:text="Time"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_toRightOf="@id/description"
android:textSize="25dip">
</TextView>
</LinearLayout>
Очевидно, что это не настоящие имена столбцов, но я изменил их в целях конфиденциальности.Этот макет используется ListView, который изменяет текст каждого представления на любое значение, представленное им.Поля имени и описания должны быть выровнены, поскольку им обоим дано 50% оставшегося экрана, но когда имя длиннее, описание смещается вправо.Почему?