繁体   English   中英

如何在 Android 布局中居中多个视图?

[英]How do I center several views in an Android layout?

就我而言,我有两个文本视图,我希望它们以我的活动为中心。

问题是当我使用:

android:gravity="center_vertical|center_horizontal"
android:layout_centerInParent="true"

两个文本视图在彼此之上,我使用LinearLayout作为父级。

android:layout_centerInParent="true"仅对RelativeLayout有效。

您应该删除垂直和基于父级的部分,只留下

android:gravity="center_horizontal"

对于两个TextViews

如果足够,第一个 TextView 垂直居中,那么您可以将其设置为|center_vertical ,并使用android:layout_below将第二个绑定到这个。

如果您需要这些文本视图恰好位于活动的垂直中心,那么您应该使用android:height="wrap_content"android:layout_centerInParent="true" (在RelativeLayout中)将它们封装到另一个(例如线性)布局中或android:gravity="center_vertical|center_horizontal"

尝试将 LinearLayout 的 Orientation 属性设置为“Horizontal”:

<LinearLayout blah blah android:orientation="Horizontal"></LinearLayout>

注意:这告诉LinearLayout你希望元素如何堆叠,如果你没有定义它,那么它不会正确堆叠它们,请参阅下面的图表以获得解释。

当您设置此属性时,它将使元素彼此相邻。

水平的

[x][x]

垂直的

[X]

[X]

要记住的另一件事是,在线性布局中居中元素所需要做的就是:

<LinearLayout blah blah android:gravity="center"></LinearLayout>

如果这不起作用试试这个:

<LinearLayout blah blah android:layout_gravity="center"></LinearLayout>

知道区别绝对是个好主意,但我不会为你查找。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM