Android - 将RelativeLayout中的视图对齐到TableLayout中的视图
问题描述:
我的根布局是RelativeLayout
,它包含一些TextView,Button和ImageViews。在屏幕的底部,我有一个TableLayout
,它代表了一个4x4的TextViews网格。我想在网格中显示与每个TextView的右下角对齐的视图(例如TextView)。Android - 将RelativeLayout中的视图对齐到TableLayout中的视图
所以我有一个
<TableLayout ...>
<TableRow ...>
<TextView android:id="@+id/x0y0".../>
<TextView android:id="@+id/x0y1".../>
....
</TableLayout>
...
<TextView android:layout_alignTop="@id/x0y0"
android:layout_alignLeft="@id/x0y0" ... />
<TextView android:layout_alignTop="@id/x1y1"
android:layout_alignLeft="@id/x1y1" ... />
但它位于屏幕的左上角。我怀疑RelativeLayout中的Views只能与同一个RelativeLayout中的另一个视图对齐,但我希望这个确认或更好的建议来解决这个问题。
答
正确,relativelayout只能对齐其子节点。你需要每一个细胞在你的表中包含一个相对布局,伪代码:
<TableRow ...>
<RelativeLayout ...>
<TextView id=id/x0y0 alignParentTop="true" alignParentLeft="true" ...>
<View alignParentRight="true" layout_below=id/x0y0 ...>
</RelativeLayout>
你也可以用垂直的LinearLayout和重力这样做是为了右对齐新的视图。