所以在我的布局中,我在同一条线上有三个按钮,一个是左,中,右对齐。我还在按钮下面有TextViews作为标签,但它们也分别对齐左,中,右。我希望他们能够在按钮之下居中并且在同一条线上彼此相对,但我无法弄清楚如何在没有明确设置坐标的情况下执行此操作,然后这些坐标会在某些手机上中断。我尝试过设置各种权重和布局选项,但它根本不适用我喜欢的方式。有没有办法在RelativeLayout中执行此操作?或者也许这是不可能的。最后,我在同一行上有三个TextView,底部有一个按钮。我想如下图所示对齐:
提前致谢。
答案 0 :(得分:0)
您不能使用RelativeLayout将一个元素置于另一个元素下方。您可以尝试使用三个RelativeLayouts的水平LinearLayout(每列一个)。您可以在垂直LinearLayout中包含整个内容以获取底部按钮。
TableLayout或GridLayout也是可能的。
答案 1 :(得分:0)
正如人们所建议的那样,View
无法将View
置于RelativeLayout
的另一TextView
之下。如果您可以确认Button
宽度不必超过TextView
宽度,则可以使用此hack。解决方案是:您将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>
内的文字居中。
{{1}}