我有一个TextView在我的应用程序。我想让文本向右对齐。我试着补充道:

android:gravity="right"

但这对我没用。

我可能做错了什么?


当前回答

android:gravity="right"

它基本上用于线性布局,所以你必须设置你的宽度的TextView或编辑文本为

android:layout_width = "match_parent"

and

当你在相对布局中工作时,使用

android:layout_alignParentRight="true"

其他回答

我认为你是这样做的:android:layout_width = "wrap_content" 如果是这种情况,这样做:android:layout_width = "match_parent"

一般来说,android:gravity="right"和android:layout_gravity="right"是不同的。

第一个参数会影响文本本身在视图中的位置,所以如果你想让它右对齐,那么layout_width=应该是"fill_parent"或"match_parent"。

第二个影响视图在其父视图中的位置,换句话说——在父视图中对齐对象本身(编辑框或文本视图)。

确保你没有使用android:layout_width="wrap_content"如果是这样,那么它将无法设置重力,因为你没有足够的空间来对齐文本。而是使用android:layout_width="fill_parent"

校正对齐已从Android API 26+支持TextView

<TextView ...
    ... android:justificationMode="inter_word" />

缺省情况下,value为none。

Android TextView文档

关于Android TextView的问题

试着使用:-

android:justificationMode="inter_word"

这将证明你的短信是正确的。