如何将textview集中在linearlayout中

时间:2012-11-20 14:08:20

标签: android view android-linearlayout

我有以下布局我想让textview出现在视图的中心和中间。我怎么能实现这个目标呢?

我在图形视图中查看布局时尝试调整各种重力属性,但似乎没有任何改变。我喜欢中心的textview,我已经完成了但是在视图的中间。

感谢亚光。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="@drawable/carefreebgscaledalphajpg" >



    <TextView
        android:id="@+id/textviewdatefornocallspage"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="You have no calls for "
        android:textSize="25sp" />

</LinearLayout>

11 个答案:

答案 0 :(得分:52)

将重力设置为linearLayout标记的中心位置:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
     android:gravity="center"
    android:background="@drawable/carefreebgscaledalphajpg" >

或像这样使用RelativeLayout

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/carefreebgscaledalphajpg" >



    <TextView
        android:id="@+id/textviewdatefornocallspage"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="You have no calls for "
        android:textSize="25sp" />

</RelativeLayout>

答案 1 :(得分:6)

在线性布局中设置android:gravity="center",并将文字视图的高度和宽度保持为wrap_content

此解决方案对我有用。

答案 2 :(得分:5)

试试这个

很简单,我试过很多回答,但所有答案都没有用......最后这个方法对我有用

                     <LinearLayout
                        android:layout_below="@+id/iv_divider"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:orientation="vertical"
                        android:layout_marginTop="@dimen/_10dp">
                        <TextView
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:text="@string/mycredits"
                            android:textColor="@color/colorGray"
                            android:gravity="center"
                            android:textSize="@dimen/_25dp" />
                    </LinearLayout>

答案 3 :(得分:2)

    <TextView
...
    android:layout_gravity="center"
....
/>

答案 4 :(得分:1)

如果在verticallayout您的方向垂直,您可以将文本视图放在android:layout_gravity="center"的“水平中心”。要垂直居中textview,您需要将textview的layout_height设置为match_parent并将android:gravity设置为“center”。如果要在此布局中使用多个视图,则应使用RelativeLayout并设置         android:layout_centerInParent="true"

答案 5 :(得分:0)

android:gravity="center_horizontal"添加到 LinearLayout 并将 TextView layout_width 更改为android:layout_width="wrap_content"

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center_horizontal"
    android:background="@drawable/carefreebgscaledalphajpg" >



    <TextView
        android:id="@+id/textviewdatefornocallspage"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="You have no calls for "
        android:textSize="25sp" />

</LinearLayout>

答案 6 :(得分:0)

将textview的宽度设置为textview的wrap_content,并将LinearLayout设置为android:gravity=center_horizontal

答案 7 :(得分:0)

对于TextView

,你想要android:layout_gravity

请参阅文档:developer.android.com

答案 8 :(得分:0)

在线性布局中设置android:gravity="center"

答案 9 :(得分:0)

没有其他答案对我有用。我不得不使用android:textAlignment="center"

我的布局如下

<LinearLayout...
    <RelativeLayout...
        <RelativeLayout....
            <TextView
                android:layout_centerInParent="true"
                android:textAlignment="center"

答案 10 :(得分:-1)

使用相对布局,它总是提供更准确和灵活的布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<ImageView
    android:id="@+id/imageView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:src="@drawable/ic_launcher" />
</RelativeLayout>