使用RelativeLayout添加页脚时出现问题

时间:2014-03-30 12:04:47

标签: android android-layout footer android-relativelayout

我有一个Activity ScrollView,我希望它下面有一个页脚。 我试过这个:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

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

      .......

    </ScrollView>

    <RelativeLayout
        android:id="@+id/layout_footer1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true" >

        <View
            android:id="@+id/footer_topline"
            android:layout_width="fill_parent"
            android:layout_height="1dp"
            android:background="#0075b5" />

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="84dp"
            android:layout_height="42dp"
            android:layout_marginBottom="15dp"
            android:layout_marginLeft="10dp"
            android:maxHeight="30dp"
            android:maxWidth="30dp"
            android:src="@drawable/logo" />
    </RelativeLayout>

</RelativeLayout>

问题是,页脚与ScrollView重叠。 我尝试在android:layout_above="@id/layout_footer1"中使用ScrollView并在图形编辑器中看到它工作,但是当我尝试启动应用时,由于layout_footer1,它会给我一个未知的资源错误。

3 个答案:

答案 0 :(得分:3)

您必须将页脚的xml标记放在ScrollView上方。然后,您应该将android:layout_above="R.id.layout_footer1"添加到ScrollView

答案 1 :(得分:1)

您可以在页脚的android:layout_below="@+id/scrollView1"中添加RelativeLayout。它将完成同样的工作

答案 2 :(得分:1)

您应该将ScrollView标记放在页脚下方并使用android:layout_above="@id/layout_footer1",如下所示:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<!-- Footer -->
<RelativeLayout
    android:id="@+id/layout_footer1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true" >

    <View
        android:id="@+id/footer_topline"
        android:layout_width="fill_parent"
        android:layout_height="1dp"
        android:background="#0075b5" />

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="84dp"
        android:layout_height="42dp"
        android:layout_marginBottom="15dp"
        android:layout_marginLeft="10dp"
        android:maxHeight="30dp"
        android:maxWidth="30dp"
        android:src="@drawable/logo" />
</RelativeLayout>

<!-- Scroll view -->
<ScrollView
    android:id="@+id/scrollView1"
    android:layout_above="@id/layout_footer1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >
</ScrollView>

</RelativeLayout>