我希望页脚固定在屏幕的底部,当且仅当它可以锚定在那里而不会重叠任何其他视图。
问题是我不知道要在页眉或页脚中添加多少视图。
如果将页脚放在窗口底部会使其重叠,我想将页脚放在滚动视图的底部。 (也许通过将它添加到RelativeLayout并将其添加到顶部组件之下的规则?)
以下是我想要获得的图片:
其中:
1)RelativeLayout包含顶部的TableLayout和底部的LinearLayout。
2)TableLayout随着TableRows的加入而向下扩展。
3)当视图添加到它时,LinearLayout从底部向上扩展。
~~~
我希望scrollview的大小增加到足以适合组件而不重叠。
提前感谢您提供如此出色的社区支持
答案 0 :(得分:10)
我认为你可以在线性布局中解决它。您在线性布局中设置了三个块:标题,正文,页脚。将body设置为fill_parent和layout_weight = 1,这样主体将展开以填充页眉和页脚从父项中获取其后的内容。整个结构放入ScrollView。
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true">
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TableRow><TextView android:text="Text1"/></TableRow>
<TableRow><TextView android:text="Text2"/></TableRow>
</TableLayout>
<RelativeLayout
android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:text="@string/lorem_ipsum"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</RelativeLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:text="Text3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:text="Text4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
</LinearLayout>
</ScrollView>
我在Android 2.1的模拟器中进行了测试,它看起来很有效。