如何在Android布局的视图中心?

我想把一个布局放在屏幕的中心。

步骤#1:在全屏的RelativeLayout中将任何你想要在屏幕上居中的东西包裹起来。

步骤#2:给这个子视图(你要在RelativeLayout居中的那个) android:layout_centerInParent="true"属性。

您可以使用XML属性android:layout_gravity将任何视图(包括布局)应用到中心,您可能希望将其设置为“center”。

你可以在这里find这个选项的可能值的参考: http : //developer.android.com/reference/android/widget/LinearLayout.LayoutParams.html#attr_android : layout_gravity

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/relLayout1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center"> <ProgressBar android:id="@+id/ProgressBar01" android:layout_centerInParent="true" android:layout_width="wrap_content" android:layout_gravity="center" android:layout_height="wrap_content"></ProgressBar> <TextView android:layout_below="@id/ProgressBar01" android:text="@string/please_wait_authenticating" android:id="@+id/txtText" android:paddingTop="30px" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView> </RelativeLayout> 

我能够使用中心的观点

 android:layout_centerHorizontal="true" 

 android:layout_centerVertical="true" 

PARAMS。

如果你想中心一个视图,使用这个。 在这种情况下,TextView必须是XML中最下面的视图,因为它的layout_height是match_parent。

 <TextView android:id="@+id/tv_to_be_centered" android:layout_height="match_parent" android:layout_width="match_parent" android:gravity="center" android:text="Some text" /> 

将android:layout_centerInParent =“true”添加到要在RelativeLayout中居中的元素

它将适用于该代码有时需要两个属性

 android:layout_gravity="center" android:layout_centerHorizontal="true" 

更新回答: 约束布局

现在看来,Android的趋势是使用约束布局。 尽pipe使用RelativeLayout居中显示视图非常简单(如其他答案所示),但对于更复杂的布局, ConstraintLayoutRelativeLayout更强大。 所以现在值得学习。

要将视图居中,只需将手柄拖到父项的所有四边。

在这里输入图像说明