文本/布局对齐Android中(textAlignment,重力)(Text/Layout Alig

2019-09-01 01:54发布

什么之间的区别android:textAlignmentandroid:gravity

Answer 1:

所有我能看到的是,textAlignment View类的成员,并在重力的TextView类的成员。 所以对于TextView的和它的子类可以使用重力,而你可以使用textAlignment所有视图。

作为TextView的和它的子类需要一些更多的文本对齐功能,所以你可以看到有重力更多的选择在哪里有textAlignment只有基本选项。 虽然这仅仅是我的猜测,因为我还没有发现对差值任何明确的文档。

你可以看到文档的这两个环节: textAlignment和重力 。



Answer 2:

随着API 15, android:textAlignment可能不会有理想的结果。 下面企图片断到中心的第一TextView使用对象android:textAlignment="center" 。 第二个使用android:gravity="center_horizontal" 。 该textAlignment没有效果,而重力工作正常。 随着API 17+, textAlignment中心如预期的文本。

要确定你的文字与所有版本正确对齐,我会用重力去。

<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 17+布局:



Answer 3:

至于我见过textAlignment似乎大多闲置。 通过它的描述,它应该做的左或右对齐。 重力似乎是一种改进textAlignment。



Answer 4:

还有一点没有明确提及:

如果你的应用有RTL支持,如禁用android:supportsRtl="false"清单中application标签,然后View textAlignment不适合文本定位工作的同时TextView gravity工作。

另一个原因更喜欢gravity



文章来源: Text/Layout Alignment in Android (textAlignment, gravity)