LinearLayouts:一种是固定的,一种是可变高度的

LinearLayouts: One fixed and one with variable height

我想在高度正好为 100 dp 的垂直 LinearLayout 中添加一个带有两个按钮的顶部栏。

所以我想要一个 100 dp 的高视图,下面是一个可变的高视图。

我正在尝试这段代码,但它不起作用。我可以看到它不接受 100 dp 作为有效值,但我不知道如何实现我想用 LinearLayout 做的事情。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

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

        <Button
            android:id="@+id/button1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="Button 1" />

        <Button
            android:id="@+id/button2"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="Button 2" />
    </LinearLayout>
    <View
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    </View>
</LinearLayout>

100dp

中删除 space 后再试
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:tools="http://schemas.android.com/tools"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:orientation="vertical">

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

        <Button
                android:id="@+id/button1"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:text="Button 1" />

        <Button
                android:id="@+id/button2"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:text="Button 2" />
    </LinearLayout>
    <View
            android:layout_width="match_parent"
            android:layout_height="match_parent">
    </View>
</LinearLayout> 

您在 100 和 dp (100 dp) 之间添加了 space,删除 space 并编译您的代码。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

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

        <Button
            android:id="@+id/button1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="Button 1" />

        <Button
            android:id="@+id/button2"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="Button 2" />
    </LinearLayout>
    <View
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    </View>
</LinearLayout>