android - 固定且始终可见的页脚位于 ListFragment 下方

标签 android android-listview android-listfragment

我正在尝试将一个固定且始终可见的页脚附加到 ListFragment 的底部。

我目前是这样做的:

@Override public void onActivityCreated(Bundle savedInstanceState) {

    // ...

    adapter = new MyAdapter(getActivity(), R.layout.list, dataList);

    ListView list = getListView();
    View footer = ((LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(R.layout.footer_add, null, false);

    list.addFooterView(footer);
    setListAdapter(adapter);
}

虽然这段代码确实在列表底部生成了一个 View ,但它并没有真正按照我的意愿进行:

首先,我需要固定页脚,即无论列表滚动到哪里,它都在屏幕上可见。使用此解决方案,页脚仅在屏幕滚动到列表底部时可见。

其次,即使列表为空,我也需要页脚出现。在此解决方案中,当列表为空时,页脚不可见。

让固定页脚(在我的例子中是一个按钮)始终显示在 ListFragment 或 ListActivity 下方的最佳方法是什么?

谢谢!

最佳答案

您可以在 xml 布局中执行此操作:

<RelativeLayout>

    <Button android:id="@+id/footer" android:layout_alignParentBottom="true"/> 
    <ListView android:id="@android:id/list" android:layout_above="@id/footer"> <!-- the list -->

</RelativeLayout>

此布局将在 fragment 的 onCreateView 方法中使用。

关于android - 固定且始终可见的页脚位于 ListFragment 下方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12353701/

相关文章:

android - 根据选中状态更改 CheckBoxPreference 摘要

java - Android list 困惑

android - 圆形进度指示器忽略宽度/高度属性并且不缩放

android - 检测 AppBarLayout/CollapsingToolbarLayout 何时完全展开

android - 转换 ListFragment 中的 Activity

java - Android ListFragment重叠

android - ListView 中的第一项在 Android 中无法正常工作

java - 如何获取HashMap的第一个元素

android - android中的 ListView 选择颜色

android:带缩略图的 ListView