我正在尝试将四个 RelativeLayouts
均等地放置在屏幕上,如下图所示。我似乎无处可去。每个将包含一个文本标签和一个位于其象限中的按钮。我试过将四个放在 RelativeLayout
中,alignComponent
值设置适当,alignParent
值设置为 Left/Right 和 Top/Bottom。我也试过只使用 alignComponent
集和只使用 alignParent
集但无济于事。
它应该是这样的
最佳答案
由于您想使用 RelativeLayout
,最简单的方法是使用垂直和水平支柱(它们是不可见的)并将它们用作四个 RelativeLayout
子项的 anchor 。这种方法肯定比带有权重的嵌套 LinearLayout
更有效。在使用权重嵌套 LinearLayout
之前,您可能应该阅读 this 。
上面链接中的一个 fragment :
因此,为了将 RelativeLayout
与 struts 一起使用,您的 XML 可能是这样的:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="${relativePackage}.${activityClass}" >
<View
android:id="@+id/horizontalStrut"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_centerVertical="true" />
<View
android:id="@+id/verticalStrut"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_centerHorizontal="true" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/horizontalStrut"
android:layout_toLeftOf="@id/verticalStrut"
android:background="@color/red" >
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/horizontalStrut"
android:layout_toRightOf="@id/verticalStrut"
android:background="@color/black" >
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/horizontalStrut"
android:layout_toLeftOf="@id/verticalStrut"
android:background="@color/blue" >
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/horizontalStrut"
android:layout_toRightOf="@id/verticalStrut"
android:background="@color/green" >
</RelativeLayout>
</RelativeLayout>
关于android - 在屏幕上平均放置四个相对布局,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26396908/