<RelativeLayout
android:id="@+id/behindChessBoard"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<GridLayout
android:id="@+id/chessBoard"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerInParent="true"
android:columnCount="8"
android:rowCount="8" >
<ImageButton
android:id="@+id/cell00"
android:layout_column="0"
android:layout_row="0"
android:background="@color/chessTan"
android:scaleType="fitXY"
android:contentDescription="00" />
<ImageButton
android:id="@+id/cell01"
android:layout_column="1"
android:layout_row="0"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="01" />
... so on and so forth...
</GridLayout>
</RelativeLayout>
目前,网格布局位于屏幕的顶部。我想要水平和垂直居中。有什么想法吗?
编辑:注意,centerInParent =“true”没有做任何事情。
EDIT2:找到了答案,我不得不设置gridlayout来包装内容,我还要写android:layout_centerVertical =“true”
答案 0 :(得分:5)
当您将高度和宽度设置为match_parent
时,它不会垂直居中于您的内容。将高度和宽度设置为wrap_content
。
像这样:
<GridLayout
android:id="@+id/chessBoard"
android:layout_width="wrap_cotent"
android:layout_height="wrap_cotent"
android:layout_centerInParent="true"
android:columnCount="8"
android:rowCount="8" >