所以在我的布局中,我在同一行上有三个按钮,一个左、中、右对齐。我在按钮下方也有 TextViews 作为标签,但它们也分别左对齐、居中和右对齐。我希望它们改为在按钮下方居中并且彼此位于同一行,但如果不明确设置坐标,我无法弄清楚如何做到这一点,这会在某些手机上中断。我尝试设置各种权重和布局选项,但它并不能如我所愿。有没有办法在相对布局中做到这一点?或者,也许这是不可能的。最后,我在同一行上多了三个 TextView,底部有一个按钮。我想对齐如下所示:
提前致谢。
所以在我的布局中,我在同一行上有三个按钮,一个左、中、右对齐。我在按钮下方也有 TextViews 作为标签,但它们也分别左对齐、居中和右对齐。我希望它们改为在按钮下方居中并且彼此位于同一行,但如果不明确设置坐标,我无法弄清楚如何做到这一点,这会在某些手机上中断。我尝试设置各种权重和布局选项,但它并不能如我所愿。有没有办法在相对布局中做到这一点?或者,也许这是不可能的。最后,我在同一行上多了三个 TextView,底部有一个按钮。我想对齐如下所示:
提前致谢。
您不能使用 RelativeLayout 将一个元素置于另一个元素下方。您可以尝试使用三个相对布局(每列一个)的水平线性布局。您可以将整个内容包含在垂直 LinearLayout 中以获取底部按钮。
TableLayout 或 GridLayout 也是可能的。
View
正如人们所建议的那样,没有办法View
在RelativeLayout
. 如果您可以确认TextView
宽度不需要大于宽度,则可以使用此技巧Button
。解决方案是:您TextView
将其左右边缘与Button
上面对齐。然后将重力设置TextView
为center
使里面的文字TextView
居中。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginTop="130dp"
android:text="Button1" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/button1"
android:layout_alignBottom="@+id/button1"
android:layout_centerHorizontal="true"
android:text="Button2" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/button2"
android:layout_alignBottom="@+id/button2"
android:layout_alignParentRight="true"
android:text="Button3" />
<TextView
android:id="@+id/textView1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/button1"
android:layout_alignRight="@id/button1"
android:layout_below="@+id/button1"
android:layout_marginTop="50dp"
android:gravity="center"
android:text="Txt1" />
<TextView
android:id="@+id/textView2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/button2"
android:layout_alignRight="@id/button2"
android:layout_below="@+id/button2"
android:layout_marginTop="50dp"
android:gravity="center"
android:text="Txt2" />
<TextView
android:id="@+id/textView3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/button3"
android:layout_alignRight="@id/button3"
android:layout_below="@+id/button3"
android:layout_marginTop="50dp"
android:gravity="center"
android:text="Txt3" />
</RelativeLayout>