如何添加一个简单的 8dp header/footer 到 Android 的 RecyclerView?

How to add a simple 8dp header/footer to Android's RecyclerView?

有没有办法将简单的 header/footer 添加到 RecyclerView?

在这里你可以看到我有什么。第一张卡片接触工具栏

在这里你可以看到我想要的。底部和卡片之间的 8dp 填充。

目前尝试过的方法:

  • 在我的回收站视图中使用 header 视图。但是我认为对每个recyclerview都这样做是非常低效的。

  • 使用 8dp 的上边距导致滚动时 recyclerview 在 top/bottom 上有白条的问题。

  • 向列表项添加填充,这会导致外卡和内卡之间的边距不同。

  • 我确定有一个我目前还不知道的简单解决方案。

    添加顶部填充并将 clipToPadding 设置为 false 即可。
    像这样:

      <android.support.v7.widget.RecyclerView
        android:id="@+id/recyclerview"
        android:paddingTop="8dp"
        android:clipToPadding="false"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    

    如果您使用带有 layout_weight 的 RecyclerView,并且 paddingBottom 不适合您,请确保将 layout_height 设置为 0dp!否则,奇怪的是,paddingTop 有效但 paddingBottom 无效:

    <android.support.v7.widget.RecyclerView android:id="@+id/recycler"
        android:paddingBottom="20dp"
        android:clipToPadding="false"
        android:layout_weight="1"
        android:layout_width="match_parent"
        android:layout_height="0dp" />