0

我使用了两种带有片段的布局,一种用于纵向模式,一种用于横向。我需要为两种布局添加一个粘性页脚,并且我已经成功地将它添加到纵向布局中,但是当我对横向布局使用类似的代码时,它不起作用。如果我将layout_width片段的 设置为0dp,我看不到任何片段,如果我将 设置layout_widthwrap_contentfill_parent,片段彼此重叠。

这是我到目前为止所拥有的:

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
>
    <!-- Footer -->     
    <TextView 
            android:id="@+id/footer" 
            android:layout_width="fill_parent" 
            android:layout_height="wrap_content" 
            android:layout_alignParentBottom="true"
     />
    <!-- Footer -->

    <fragment android:name="com.app.listing1"
            android:id="@+id/fragment1"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:layout_above="@id/footer"            
     />

    <fragment android:name="com.app.listing2"
            android:id="@+id/fragment2"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:layout_above="@id/footer"            
     />

</RelativeLayout>

编辑

我已经离我想要的更近了一点。如果我在 fragment1 上设置了一个宽度,那么我会得到我正在寻找的东西,但这显然并不理想。出于某种原因,在两个片段的布局以及每个片段中的布局上设置 layout_width="wrap_content" 会导致第一个片段占据整个屏幕:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
>
    <!-- Footer -->     
    <TextView 
            android:id="@+id/footer" 
            android:layout_width="fill_parent" 
            android:layout_height="wrap_content" 
            android:layout_alignParentBottom="true"
     />
    <!-- Footer -->

    <fragment android:name="com.app.listing1"
            android:id="@+id/fragment1"
            android:layout_width="200dp"
            android:layout_height="fill_parent"
            android:layout_above="@id/footer"            
            android:layout_toLeftOf="@id/fragment2"
     />

    <fragment android:name="com.app.listing2"
            android:id="@+id/fragment2"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:layout_above="@id/footer"            
            android:layout_toRightOf="@id/fragment1"
     />

</RelativeLayout>
4

1 回答 1

0

编辑:

片段彼此重叠,因为您没有在 RelativeLayout 中对齐它们。如果您希望它们水平排列,请使用layout_toRightOflayout_toLeftOf

于 2012-04-07T19:40:51.693 回答