我将应用程序的界面分为三个区域:页眉、内容和页脚。页眉具有固定大小(它只有一个图像),而页脚和内容的大小可以变化。
在分辨率更高的设备中,我想在屏幕上插入页眉和页脚,并为内容区域保留任何可用空间。在具有低分辨率的设备中,考虑将内容长度尽可能短(例如 wrap_content)并在下面插入页脚(要求用户执行滚动以查看页脚)。
我得到的最好的是使用RelativeView:
<RelativeLayout
android:id="@+id/relativeLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:id="@+id/header"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_alignParentTop="true" >
(...)
</LinearLayout>
<LinearLayout
android:id="@+id/footer"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_alignParentBottom="true" >
(...)
</LinearLayout>
<FrameLayout
android:id="@+id/content"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/footer"
android:layout_below="@+id/header"
android:lay >
(...)
</FrameLayout>
</RelativeLayout>
对于较大的分辨率可以按预期工作,问题在于对于较小的分辨率:内容少于应有的内容,因为它占用了页眉和页脚之间的空间。
我该如何解决这个问题?假设屏幕的所有可用空间(大分辨率),我找不到另一种获取内容的方法,因为我不能简单地使用 fill_parent,因为内容位于页眉和页脚之间。我也尝试使用最小高度,但没有成功。