水平线性布局中两个文本视图的不同重力

Different Gravity of two textviews in a horizontal Linear Layout

我正在使用以下代码,当我将第一个文本视图的引力设置为 center 时,第二个文本视图的文本也会自动与第一个文本视图对齐。即使我将第二个视图的重力设置为 top

<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="96dp"
        android:text="New Text"
        android:id="@+id/textView" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="48dp"
        android:text="New Text"
        android:id="@+id/textView2" />
</LinearLayout>

中有一个解决方案,它说将第二个文本视图包装在另一个 LinearLayout 中。但为什么会这样呢?

默认情况下,水平 LinearLayout 将其子 View 按其基线对齐,因此第二个 TextView 正在移动以使其文本与第一个对齐。要解决您的问题,只需将 LinearLayoutbaselineAligned 属性设置为 false.

<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:baselineAligned="false">