0

我正在尝试创建一个布局,其中我有一个固定大小的 ScrollView 隐藏在屏幕的右侧,然后 LinearLayout 填充剩余的屏幕空间。像这样:

<---------------------------LinearLayout---------------------------><----ScrollView---->

在 ScrollView 中是另一个 LinearLayout,我将 TextViews 动态添加到其中。这是我目前拥有的:

<?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="match_parent"
android:baselineAligned="false"
android:orientation="horizontal" >

<LinearLayout
    android:id="@+id/chart"
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="1"
    android:background="#FF0000"
    android:orientation="horizontal" >
</LinearLayout>

<ScrollView
    android:layout_width="260dp"
    android:layout_height="match_parent"
    android:background="#0000FF"
    android:scrollbars="vertical" >

    <LinearLayout
        android:id="@+id/meterList"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#00FF00"
        android:orientation="vertical" >
    </LinearLayout>

</ScrollView>

</LinearLayout>

我读到将宽度设置为 0dp 并将重量设置为 1 应该让它填满屏幕的其余部分,但它会被 ScrollView 压扁,占据屏幕的 90%。奇怪的是,我在 ScrollView 中的 LinearLayout 只占用了其中一半的空间。因为我对它进行了颜色编码,所以它看起来像这样:

<--Red--><----------------Green----------------><----------------Blue---------------->

一旦一个视图被动态添加,所有的蓝色背景都应该像这样被覆盖:

<------------------------------Red------------------------------><-------Green------->

这些都没有任何意义……

编辑:因为这看起来很相关,所以我应该提到这个布局被我的片段夸大了。该片段然后附加到:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/fragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

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

        <Button
            android:id="@+id/clearPrefs"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="DEBUG" >
        </Button>
    </LinearLayout>

    <fragment
        android:id="@+id/fragment_chart"
        android:name="...GraphFragment"
        android:layout_width="wrap_content"
        android:layout_height="match_parent" />

</LinearLayout>
4

0 回答 0