在Android中将TextView对齐到右侧

3
在Android XML中,我试图将文本对齐方式设置为右对齐:
android:gravity="center_vertical|right"

我还将它居中对齐到父元素,因此添加了 center。现在我的文本右对齐,但我想将它赋值到父元素的左边位置:

android:layout_alignParentLeft="true"

但这只保持了文本的对齐方式,而没有对齐到父组件的中心位置? 以下是完整的视图XML代码:
<TextView
    android:id="@+id/textview_example"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_vertical|right"
    android:layout_alignParentLeft="true"
    android:textColor="#474747"
    android:textSize="14sp" />

有人能帮我创建一个解决方案,使TextView的文本对齐到右侧但分配给父元素的左侧吗?


1
请问您能否展示整个XML并画出它的结构和应该如何呈现吗?这将有助于我更好地理解您的问题。 - A.S.
你的 TextView 是在 LinearLayout 还是 RelativeLayout 中?android:gravity 用于 LinearLayout 中的元素;android:layout_alignParentLeft 用于 RelativeLayout 中的元素。 - cryptochronoconolite
2个回答

16

您的代码实际上是可以工作的,但如果您将宽度设为小于父元素,则会更清晰,尝试进行以下更改。

<TextView
        android:id="@+id/textview_example"
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        android:gravity="center_vertical|right"
        android:textColor="#474747"
        android:text="ABAGSADGDBAJDHADNA"
        android:textSize="14sp" />

2

试试这个...

       <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:background="#E6F2B2"
            android:gravity="center"
            android:padding="3dp" >

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:gravity="end|center"
                android:text="@string/title"
                android:textColor="#323232"
                android:textSize="18sp"
                android:textStyle="bold" />
        </LinearLayout>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接