Recyclerview滚动浏览FAB

时间:2015-04-29 12:30:18

标签: android android-recyclerview

我正在使用recyclerview并在我的布局上安装了FAB。 我希望能够在最后一项的底部留出一些空间,就像Gmail应用程序一样,当您滚动到底部时,底部项目的右手星仍然可以点击。

我尝试在底部添加一些填充来实现这一点,但滚动条不会一直滚动到底部,停在填充高度,而Gmail版本则如此。有谁知道如何做到这一点?

<RecyclerView
    android:id="@+id/list"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:clipToPadding="false"
    android:paddingBottom="90dp"
    android:scrollbars="vertical" />

3 个答案:

答案 0 :(得分:5)

你必须添加&#34;页脚&#34;在适配器的末尾。此页脚只是一个空白视图,如android.widget.Space

回收商视图没有标题页脚的任何原生选项,但您可以谷歌并找到一些选项。

我开发了一个带有额外内容的库,用于具有页眉/页脚/部分选项的回收站视图:

我还没有将它上传到Maven,但您可以在此处获取代码:https://github.com/eyeem/RecyclerViewTools

然后使用只是:

WrapAdapter wrapAdapter = new WrapAdapter(adapter);
wrapAdapter.addFooter(inflater.inflate(R.layout.footer, recycler,   false));
recycler.setAdapter(wrapAdapter);

答案 1 :(得分:1)

添加页脚的最简单方法是设置一个具有usesFooter()标志的自定义适配器,如果为真,则将行数加1(或者如果不需要则添加一个由其他任何东西添加)。然后在onCreateViewHolder()中检查位置是否是列表中的最后一个,并使用要添加的填充高度(例如80dp)给空视图充气(

如果在onBindViewHolder()的此位置,您还应该添加一个返回值,因为它是一个空视图,不应该更新其数据。

答案 2 :(得分:-1)

使用它

  android:layout_marginBottom = "80dp"