Кнопка в Relativelayout была растянута
В основном я хочу добавить textView, spinner и кнопку в этом относительном макете. Похоже:
---- TextView ----
----- вертушка ----
------------ button--
Проблема в том, что кнопка внизу справа растянута, высота кнопки занимает все остальное пространство.
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/surveyLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
android:layout_marginTop="20dp"
android:layout_alignParentTop="true"
android:text="@string/selectSurvey"
android:textColor="@android:color/darker_gray"
android:id="@+id/hasSurveyLabel"
/>
<Spinner
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/surveySpinner"
android:layout_below="@+id/hasSurveyLabel"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="30dp"
android:id="@+id/startButton"
android:text="@string/start"
**android:layout_below="@+id/surveySpinner"**
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:paddingTop="10dp"
android:paddingLeft="30dp"
android:paddingRight="30dp"
/>
Похоже, это из-за layout_below, когда мы используем layout_below, кнопку под вращателем, она должна быть чуть ниже нее, без пробела, если вы ее не определите.
Как мы можем решить эту проблему?
То, что я ожидаю, это поместить кнопку под спиннер и внизу экрана.
Я боролся с этим в течение многих дней, любая помощь? Благодарю.
2 ответа
Я бы удалил ссылку на счетчик и просто поместил бы ее внизу справа. У меня похожий макет экрана, и следующие настройки кнопок работают для меня.
<Button
android:id ="@+id/testButton"
android:text="Testing"
android:layout_width ="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight ="true" />
В качестве альтернативы то, что я видел, сделало это, чтобы обернуть в LinearLayout, который размещен внизу. Но расслоение кажется мне ненужным. Надеюсь это поможет!
<LinearLayout
android:orientation ="horizontal"
android:layout_width ="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight ="true">
<Button
android:id ="@+id/testButton"
android:text="Testing"
android:layout_width ="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
Растягивается только высота? Если так, то я бы удалил android:layout_alignParentBottom="true"
и только позвольте ему ссылаться на Spinner и выровнять его по правой стороне...