我在我的应用程序中有一个TextView
。我想要将其中的文本向右对齐。我尝试添加以下内容:
android:gravity="right"
但这对我不起作用。
我可能做错什么了?
android:layout_width="match_parent"
和 TextView 的 android:layout_gravity="right"
。在我的情况下,我正在使用相对布局
来处理一个空字符串
在这个问题上我苦苦挣扎了一个小时。只有以下方法适用于我:
android:layout_toRightOf="@id/welcome"
android:layout_toEndOf="@id/welcome"
android:layout_alignBaseline="@id/welcome"
layout_toRightOf
或layout_toEndOf
都可以使用,但为了更好地支持它,我两者都使用了。
为了更清晰明了:
这就是我想做的:
这是模拟器的输出
布局:
<TextView
android:id="@+id/welcome"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
android:text="Welcome "
android:textSize="16sp" />
<TextView
android:id="@+id/username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@id/welcome"
android:layout_toRightOf="@id/welcome"
android:text="@string/emptyString"
android:textSize="16sp" />
请注意:
android:layout_width="wrap_content"
是有效的Gravity
没有被使用
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
希望这能达到目的。
android:textAlignment="textStart"
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/tct_postpone_hour"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:gravity="center_vertical|center_horizontal"
android:text="1"
android:textSize="24dp" />
</RelativeLayout>
我也遇到了同样的问题,并发现问题是由于TextView的layout_width设置为wrap_content导致的。你需要将layout_width设置为match_parent,同时设置android:gravity = "gravity"。
android:gravity="center"
添加到 TextView
中。从Android API 26+开始,TextView支持对齐方式的调整。
<TextView ...
... android:justificationMode="inter_word" />
默认情况下,值为none。
尝试使用以下方法:
android:justificationMode="inter_word"
这将使您的文本对齐。