如何在Android(RelativeLayout)中水平居中?

时间:2015-01-20 17:36:30

标签: android android-layout

我有以下代码:

<TextView
    android:id="@+id/exercise_name_label"
    android:layout_width="match_parent"
    android:layout_height="32dp"
    android:text="Curls"
    android:gravity="bottom"
    android:layout_centerHorizontal="true"
    />

我希望文本在32dp的底部对齐并水平居中......目前它没有水平居中:

enter image description here

3 个答案:

答案 0 :(得分:1)

选项1: 你应该将重力调整到center_horizo​​ntal | bottom =)

<TextView
    android:id="@+id/exercise_name_label"
    android:layout_width="match_parent"
    android:layout_height="32dp"
    android:text="Curls"
    android:gravity="center_horizontal|bottom" />

方案2: 您应该在parent =)

中将width调整为wrap_content和center_horizo​​ntally
<TextView
    android:id="@+id/exercise_name_label"
    android:layout_width="wrap_content"
    android:layout_height="32dp"
    android:text="Curls"
    android:gravity="bottom"
    android:layout_centerHorizontal="true" />

答案 1 :(得分:0)

android:layout_centerInParent="true"就是你想要的。但我必须说你不应该使用相对布局。在我看来,线性布局更加稳定。

如果要将其更改为线性布局,可以使用android:layout_gravity="center"

答案 2 :(得分:0)

将这些属性设置为TextView:

<!-- It will make your layout center horizontal relative to parent -->
android:layout_centerHorizontal="true"

<!-- It will draw your text from center of the area assigned to textview-->
android:gravity="center"