当我将背景设置为textView时,Android如何将文本垂直居中

时间:2012-06-01 09:38:10

标签: android xml layout textview alignment

我需要将TextView置于紫色背景enter image description here

的中心

这是XML:

<TextView
    android:id="@+id/widget33"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="somePurplePNG"
    android:text="TextView"
    android:gravity="left"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true" />

有什么想法吗? 谢谢 PS:我无法创建包装textview并定义背景的布局。

5 个答案:

答案 0 :(得分:6)

像这样

更改文字视图的重力
android:gravity="center_horizontal"

android:gravity="center"

答案 1 :(得分:1)

使用

解决
android:gravity="center_vertical"

答案 2 :(得分:1)

以这种方式使用TextView

 <TextView
    android:id="@+id/widget33"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    aandroid:background="@drawable/somePurplePNG"
    android:text="TextView"
    android:gravity="center"/>

答案 3 :(得分:1)

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

<TextView
    android:id="@+id/widget33"
    android:layout_width="match_parent"
    android:layout_height="64dp"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:gravity="center"
    android:text="TextView" />

</LinearLayout>    

答案 4 :(得分:1)

您可以在java类中以编程方式在文本视图中对齐文本

TextView YourTextView = (TextView)findViewById(R.id.textViewid);
//This will align text in both horizontal and Vertical of its container
YourTextView.setGravity(Gravity.CENTER);

//Place object in the vertical center of its container
YourTextView.setGravity(Gravity.CENTER_HORIZONTAL);

//Place object in the vertical center of its container
YourTextView.setGravity(Gravity.CENTER_VERTICAL);