Как мне добиться следующего результата с помощью RelativeLayout?

Фотографии: http://img838.imageshack.us/img838/1402/picse.png

Как сделать макет на рис. 2, используя только RelativeLayout. Ниже приведен макет xml первого снимка экрана.







7
задан Ragunath Jawahar 24 August 2010 в 11:25
поделиться

2 ответа

Для этого можно использовать LinearLayout внизу. Но вы хотите использовать макет RelativeLayout только для того, чтобы:

<RelativeLayout android:layout_width="fill_parent" ... >

...    

<View android:id="@+id/helper" 
android:layout_width="0dp"
android:layout_height="0dp" 
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" />

<Button android:id="@+id/true_btn"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content" 
android:layout_toLeftOf="@id/helper"/>

<Button
android:id="@+id/false_btn"
android:layout_alignBaseline="@id/true_btn"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content" 
android:layout_toRightOf="@id/helper" />

</RelativeLayout>

Разве нельзя использовать вложенные макеты?

18
ответ дан 6 December 2019 в 10:46
поделиться

Если вы измените кнопки на

<Button android:id="@+id/true_btn"
    android:text="@string/true_option"
    android:layout_alignParentBottom="true"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

<Button
    android:id="@+id/false_btn"
    android:text="@string/false_option"
    android:layout_toRightOf="@id/true_btn"
    android:layout_alignBaseline="@id/true_btn"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" />

, вы используете по крайней мере полную ширину, хотя false_btn получит все оставшееся пространство.

Чтобы увеличить ширину первого true_btn , вы можете установить атрибут minWidth - либо используйте фиксированное значение, либо получите ширину экрана и установите minWidth его половина

0
ответ дан 6 December 2019 в 10:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: