将文本中心与android对齐


149

我知道这听起来很简单。我需要在中间放置一个文本,但是当文本太长时,它需要移到下方,但仍要在xml的中心对齐。

这是我的代码:

 <LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/showdescriptioncontenttitle"
    android:paddingTop="10dp"
    android:paddingBottom="10dp"
    android:layout_centerHorizontal="true"
>
    <TextView 
        android:id="@+id/showdescriptiontitle"
        android:text="Title"
        android:textSize="35dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
    />
</LinearLayout>

我放置paddingTop和Bottom是因为我需要一些空间。PS:我的代码更大;它在RelativeLayout中。


在这里您没有使用任何文本样式
Dinith

Answers:


380

还将android:gravity参数设置TextViewcenter

为了测试不同布局参数的效果,我建议为每个元素使用不同的背景色,这样您就可以看到布局如何随重力,layout_gravity等参数变化。


谢谢,它奏效了,只需要一些时间来确认您的答案!
Tsunaze 2011年

是的,这是真的。但是我认为只有TextView有多行。因为只有1个不完整的文本行,所以TextView不会水平填充布局
peter.bartos

您可以通过设置TextView的android:layout_width =“ fill_parent”
peter.bartos

2
不要与混淆android:layout_gravity。h!:)
Joshua Pinter


21

在xml中使用这种方式

   <TextView
        android:id="@+id/myText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Time is precious, so love now."
        android:gravity="center"
        android:textSize="30dp"
        android:textColor="#fff"
        />

7

您可以使用以下内容:

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/showdescriptioncontenttitle"
    android:paddingTop="10dp"
    android:paddingBottom="10dp">

 <TextView
        android:id="@+id/textview1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="Your text"
        android:typeface="serif" />
</LinearLayout>

对于要使用的“中心”属性,布局必须是相对的。


5

android:gravity="center"在您的TextView中添加即可解决问题(因为父布局是Relative/Linear)!

另外,您应该避免使用dp作为字体大小。请改用sp。


3

在TextView上添加具有中心值的layout_gravity和重力

<TextView
    android:text="welcome text"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    android:gravity="center"
    />


1
android:layout_gravity="center"

要么

android:gravity="center"

两者都对我有用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.