Android 线性布局是否有替代布局和基线

Android 线性布局是否有替代布局和基线,android,android-layout,Android,Android Layout,我想将右侧的折叠与Hello的基线对齐 我想知道我可以在线性布局中执行此操作吗 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_c

我想将右侧的
折叠
Hello
的基线对齐

我想知道我可以在
线性布局中执行此操作吗

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layoutDirection="locale"
        android:textDirection="locale"
        android:orientation="horizontal">

    <LinearLayout
            android:id="@+id/text_views"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="start"
            android:orientation="vertical">

        <TextView
                android:id="@+id/header"
                android:text="Hello"
                android:textSize="17sp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:includeFontPadding="false"
        />

        <TextView
                android:id="@+id/description_text"
                android:text="Just say hello to everybody"
                android:textSize="12sp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:includeFontPadding="false"
        />
    </LinearLayout>

    <Space
            android:layout_width="0dp"
            android:layout_height="1dp"
            android:layout_weight="1"
    />

    <TextView
            android:id="@+id/dismiss_btn"
            android:text="Fold"
            android:textSize="13sp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:includeFontPadding="false"
            android:layout_alignBaseline="@+id/header"
            android:layout_gravity="center|end"
    />
</LinearLayout>

我不知道使用
weight
来模拟
android:layout\u alignBaseline
是否合适,但它似乎很管用

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layoutDirection="locale"
        android:textDirection="locale"
        android:orientation="horizontal">

    <LinearLayout
            android:id="@+id/text_views"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="start"
            android:orientation="vertical">

        <TextView
                android:id="@+id/header"
                android:text="Hello"
                android:textSize="17sp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:includeFontPadding="false"
        />

        <TextView
                android:id="@+id/description_text"
                android:text="Just say hello to everybody"
                android:textSize="12sp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:includeFontPadding="false"
        />
    </LinearLayout>

    <Space
            android:layout_width="0dp"
            android:layout_height="1dp"
            android:layout_weight="1"
    />

    <LinearLayout
            android:id="@+id/text_label"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_gravity="start"
            android:orientation="vertical">
    <TextView
            android:id="@+id/dismiss_btn"
            android:text="Fold2"
            android:textSize="13sp"
            android:layout_width="wrap_content"
            android:layout_weight="0.57"
            android:layout_height="0dp"
            android:includeFontPadding="false"
            android:layout_gravity="center|end"
            android:gravity="bottom"
    />
        <Space
                android:layout_width="wrap_content"
                android:layout_height="0dp"
                android:layout_weight="0.43"
        />
    </LinearLayout>
</LinearLayout>

如果文本大小从左侧开始:
17sp
12sp
,则上部文本视图的权重应为
17/(17+12)=0.59
。但是我发现
0.57
的对齐效果更好


您可以尝试以下方法:



在使用RelativeLayout时,我们似乎不需要
标记。我之所以添加它,是因为它是您的元素之一。如果需要,您可以删除它:)此外,如果ans对您有效,请接受它,谢谢!^。^我很感激。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layoutDirection="locale"
    android:orientation="vertical"
    android:textDirection="locale">
        <TextView
            android:id="@+id/header"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:includeFontPadding="false"
            android:text="Hello"
            android:layout_alignParentStart="true"
            android:gravity="bottom"
            android:textSize="17sp" />
        <TextView
            android:id="@+id/dismiss_btn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:includeFontPadding="false"
            android:layout_alignBaseline="@+id/header"
            android:layout_alignParentEnd="true"
            android:text="Fold"
            android:textSize="13sp" />
        <TextView
            android:id="@+id/description_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:includeFontPadding="false"
            android:layout_below="@+id/space"
            android:text="Just say hello to everybody"
            android:textSize="12sp" />
    <Space
        android:id="@+id/space"
        android:layout_width="0dp"
        android:layout_height="1dp"
        android:layout_below="@+id/header"
        android:layout_weight="1" />
</RelativeLayout>