【问题标题】:Android - Centre Text Relative to Screen and not ViewAndroid - 中心文本相对于屏幕而不是视图
【发布时间】:2016-12-01 16:36:08
【问题描述】:

我在线性布局中有许多文本视图,它们本身位于相对布局中的线性布局中(参见下面的结构)。当文本太长时,我使用android:layout_toRightOf 将顶级线性布局定位到视图中按钮的右侧,以阻止文本视图与按钮重叠。

我想要做的是将文本视图中的文本相对于整个视图居中,而不是它所在的线性布局(即相对于屏幕宽度居中)。我尝试使用 layout_gravity 设置为在 textview 和相对布局中居中)但没有效果。

谁能建议如何以这种方式将文本居中?

<RelativeLayout
        android:id="@+id/headerLayout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:background="@drawable/purple"
        android:minHeight="64dip"
        android:visibility="visible" >

        <LinearLayout
            android:id="@+id/linearLayout1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="2dip"

            android:layout_toRightOf="@+id/backButton"

            android:gravity="center|center_vertical|fill_vertical"
            android:orientation="vertical" >

            <LinearLayout
                android:id="@+id/headerTextLayout"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="48dip"
                android:layout_marginRight="48dip"

                android:gravity="center|center_vertical|fill_vertical"
                android:orientation="vertical" >

                <TextView
                    android:id="@+id/headerText"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:gravity="center"
                    android:text=""
                    android:textColor="@color/white_color"
                    android:textSize="18sp"
                    android:paddingLeft="16dip"
                    android:paddingRight="16dip"
                    android:typeface="sans"
                    android:singleLine="true"/>

【问题讨论】:

  • 为什么不使用 centerInParent="true" 将 textview 添加到主要相对布局中
  • 抱歉 - 这是因为布局中有更多的文本视图。

标签: android xml android-layout textview


【解决方案1】:

试试这个

<TextView
                    android:id="@+id/headerText"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:gravity="center"
                    android:text=""
                    **android:textAlignment="gravity"**
                    android:textColor="@color/white_color"
                    android:textSize="18sp"
                    android:paddingLeft="16dip"
                    android:paddingRight="16dip"
                    android:typeface="sans"
                    android:singleLine="true"/>

【讨论】:

  • 遗憾的是没有任何效果。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多