0

我有一个带有视图文本视图、表格和底部按钮的布局。无论表格的高度如何,我都希望按钮始终位于底部,因此我将布局更改为相对,这样我就可以做到这一点。

然而,这将所有文本视图和表格混合成一行。所以我把这些放在我认为可以解决问题的 RelativeLayout 中的 LinearLayout 中。现在的问题是只显示第一个 TextView 和底部的按钮。其他一切都不见了。

这是我用来定义此布局的 xml 代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_margin="4dip"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true">

        <TextView
            android:id="@+id/view_meal_name"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="Spaghetti Bolognaise"
            android:textSize="25sp" />

        <TextView
            android:id="@+id/view_meal_type"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="Dinner"
            android:textSize="16sp" />

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="10dip"
            android:layout_marginTop="10dip" >

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_toLeftOf="@+id/view_day_calories"
                android:text="@string/calories_label"
                android:textSize="18sp" />

            <TextView
                android:id="@+id/view_day_calories"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:text="@string/calories_today_value"
                android:textSize="18sp" />
        </RelativeLayout>

        <View
            android:layout_width="fill_parent"
            android:layout_height="2dip"
            android:layout_marginBottom="10dip"
            android:background="@color/hr" />

        <ScrollView
            android:id="@+id/scrollView1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >

            <LinearLayout
                android:id="@+id/linearLayout1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" >

                <TableLayout
                    xmlns:android="http://schemas.android.com/apk/res/android"
                    android:id="@+id/tableLayout1"
                    android:layout_width="wrap_content"
                    android:layout_height="match_parent"
                    android:layout_marginLeft="10dip"
                    android:layout_marginRight="10dip"
                    android:stretchColumns="0,1,2" >

                    <TableRow
                         android:id="@+id/tableRow1"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content" >

                        <TextView
                            android:id="@+id/meal_table_ingred_title"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="@string/ingredient"
                            android:textAppearance="?android:attr/textAppearanceMedium" />

                        <TextView
                            android:id="@+id/meal_table_quantity_title"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="@string/quantity"
                            android:textAppearance="?android:attr/textAppearanceMedium" />

                        <TextView
                            android:id="@+id/meal_table_calories_title"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="@string/calories"
                            android:textAppearance="?android:attr/textAppearanceMedium" />
                    </TableRow>
                </TableLayout>
            </LinearLayout>
        </ScrollView>
    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:weightSum="1.0" >

        <Button
            android:id="@+id/edit_meal_button"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="@string/edit_meal_label" />

        <Button
            android:id="@+id/favourite_meal_button"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="@string/favourite_meal_label" />
    </LinearLayout>

</RelativeLayout>

谢谢你的帮助!

4

1 回答 1

2

改变

<LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true">

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:orientation="vertical">
于 2012-12-17T11:12:11.713 回答