如何在TextView中水平和垂直居中文本,以便它正好出现在Android中的TextView的中间?


当前回答

试试看:

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

其他回答

正如许多答案所表明的那样,上述工作正常。

android:gravity="center"

如果要使其垂直居中:

android:gravity="center_vertical"

或仅水平:

android:gravity="center_horizontal"

如果使用的是相对布局:

  <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/stringname"
    android:layout_centerInParent="true"/>

如果使用LinearLayout

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/stringname"
    android:layout_gravity="center"/>

使用android:gravity=“center”解决问题。

这是解决方案。

<TextView  
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:gravity="center"
       android:text="**Your String Value**" />

在对TextView使用gravity时,API级别17中实现了另一种方法-

textView.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);

不知道有什么区别,但它也起作用。但仅适用于API 17级或更高级别。