Android layout_below не работает

Я широко использую RelativeLayouts в своем приложении и думал, что знаю, как их указать, но это меня в недоумении. Я в основном размещаю 4 TextView в двух строках по два в каждой, состоящих из метки и текста, который будет предоставлен. Он должен выглядеть примерно так:

Дата рождения: 23 августа 1810 г., Мейсон, Кентукки

Умер: 15 июля 1865 г., Цинциннати, Гамильтон, штат Огайо

Это соответствующая часть схемы:

        <TextView android:id="@+id/birth_lbl"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/given_layout"
            android:layout_alignLeft="@+id/given_layout"
            android:layout_marginTop="6dip"
            style="@style/label"
            android:text="@string/born"
        />
        <TextView android:id="@+id/birth"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@+id/birth_lbl"
            android:layout_alignBaseline="@+id/birth_lbl"
            android:layout_marginLeft="10dip"
            android:layout_marginRight="6dip"
            style="@style/main_text"
            android:text="dd Mmm yy"
        />
        <TextView android:id="@+id/death_lbl"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/birth"
            android:layout_alignLeft="@+id/birth_lbl"
            android:layout_marginTop="4dip"
            style="@style/label"
            android:text="@string/died"
        />
        <TextView android:id="@+id/death"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@+id/death_lbl"
            android:layout_alignLeft="@+id/birth"
            android:layout_alignBaseline="@+id/death_lbl"
            android:layout_marginRight="6dip"
            style="@style/main_text"
            android:text="dd Mmm yy"
        />

Для по какой-то причине это отображает просмотры линии смерти НАД изображениями линии смерти! Если я изменю спецификацию представления death_lbl на layout_below = "@ + id / Birth_lbl" ', строки будут расположены правильно! Однако представление «рождение» может быть перенесено на несколько строк, поэтому мне действительно нужно разместить вторую строку под «рождение», а не «рождение_lbl».

Кто-нибудь знает причину такого поведения? Это происходит как в редакторе графического макета в Eclipse, так и во время выполнения на моем планшете под управлением Android 4.0.

9
задан gordonwd 19 February 2012 в 18:38
поделиться