如何在Android的RecyclerView中添加简单的8dp页眉/页脚?


133

有没有一种方法可以向RecyclerView添加简单的页眉/页脚?

在这里您可以看到我所拥有的。第一张卡片触摸工具栏 这就是我所拥有的

,在这里您可以看到我想要的。底部和卡片之间的填充距离为8dp。 这就是我想要的

到目前为止我尝试过的方法:

  • 在我的recyclerview中使用标题视图。但是我认为对于每个recyclerview这样做都是非常无效的。

  • 使用8dp的上边距,这会导致滚动时recyclerview的顶部/底部有白条的问题。

  • 在列表项上添加一个填充,这会导致外卡和内卡之间的边距有所不同。

  • 我敢肯定有一个到目前为止还不了解的简单解决方案。

    Answers:


    403

    添加顶部填充并将其设置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" />

    9
    适用于顶部,但由于某些原因而不适用于底部。
    本杰明

    4
    您正在使用哪个版本的支持库?设置paddingBottom对我来说很好。
    Estel 2015年

    2
    在api 23上对我都不起作用。我正在尝试android:paddingBottom =“ 8dp” android:clipToPadding =“ false”
    techtinkerer 2016年

    1
    paddingBottom Works for me,recyclerview-v7-25.3.1
    Nino van Hooff

    1
    但是,此解决方案会裁剪滚动条。有什么解决办法吗?
    塞巴斯蒂安

    2

    如果您将RecyclerView与一起使用layout_weight,但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" /> 

    将高度设置为0dp会使视图消失。我在这里想念什么吗?
    Sagar

    只需删除weight =“ 1”并将layout_height设置为match_parent-
    迈克
    By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
    Licensed under cc by-sa 3.0 with attribution required.