Android中的文本/布局alignment(textAlignment,gravity)

android:textAlignmentandroid:gravity什么区别?

我只能看到textAlignment是View类的成员,而gravity是TextView类的成员。 所以对于TextView及其子类,您可以使用重力,而对所有视图使用textAlignment。

由于TextView及其子类需要更多的文本alignmentfunction,因此您可以看到在重力方面有更多的选项,在textAlignment中只有基本的选项。 虽然这只是我的猜测,因为我还没有find任何关于差异的明确文件。

你可以看到这两个文档链接: textAlignment和gravity 。

据我所见textAlignment似乎大部分是未使用的。 通过它的描述,它应该做正确的或左alignment。 重力似乎是一个改进的textAlignment。

使用API​​ 15, android:textAlignment可能没有所需的结果。 下面的代码片段尝试使用android:textAlignment="center"居中第一个TextView对象。 第二个使用android:gravity="center_horizontal"textAlignment没有效果,而重力正常工作。 使用API​​ 17+, textAlignment按预期居中文本。

为了确保你的文本与所有版本正确alignment,我会重力。

 <LinearLayout android:layout_width="50dp" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="5dp" android:text="Fri" android:textAlignment="center" android:textSize="16sp" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="29" android:gravity="center_horizontal" android:textSize="18sp" /> </LinearLayout> 

API 15中的结果布局:
在API 15中产生布局

API 17+中的结果布局:
在API 17+中产生布局