我有一个TextView在我的应用程序。我想让文本向右对齐。我试着补充道:
android:gravity="right"
但这对我没用。
我可能做错了什么?
我有一个TextView在我的应用程序。我想让文本向右对齐。我试着补充道:
android:gravity="right"
但这对我没用。
我可能做错了什么?
当前回答
你可以使用:
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
其他回答
<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>
使一号在水平和垂直的中心对齐。
一般来说,android:gravity="right"和android:layout_gravity="right"是不同的。
第一个参数会影响文本本身在视图中的位置,所以如果你想让它右对齐,那么layout_width=应该是"fill_parent"或"match_parent"。
第二个影响视图在其父视图中的位置,换句话说——在父视图中对齐对象本身(编辑框或文本视图)。
使(LinearLayout) android:layout_width="match_parent"和TextView的android:layout_gravity="right"
以下是我的工作:
<TextView
android:id="@+id/tv_username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Sarah" />
<TextView
android:id="@+id/tv_distance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/tv_username"
android:layout_alignParentEnd="true"
android:layout_toEndOf="@+id/tv_username"
android:text="San Marco"
android:textAlignment="viewEnd" />
请注意第二个TextView的android:layout_alignParentEnd和android:textAlignment设置。
在我的例子中,我使用了属性“layout_alignRight”,在文本中:
android:layout_alignRight="@+id/myComponentId"
如果你想添加一些右边框,只需要设置属性“Layout_Margin right”为“20dp”,例如:
android:layout_marginRight="20dp"