วิธีเพิ่ม 8dp header / footer อย่างง่าย ๆ ไปยัง RecyclerView ของ Android


133

มีวิธีการเพิ่มส่วนหัว / ท้ายกระดาษธรรมดา ๆ ลงใน RecyclerView หรือไม่?

ที่นี่คุณสามารถเห็นสิ่งที่ฉันมี บัตรใบแรกสัมผัสกับแถบเครื่องมือ นี่คือสิ่งที่ฉันมี

และที่นี่คุณสามารถเห็นสิ่งที่ฉันต้องการ 8dp Padding ระหว่างด้านล่างและการ์ด นี่คือสิ่งที่ฉันต้องการ

วิธีการที่ฉันพยายาม:

  • ใช้มุมมองส่วนหัวใน recyclerview ของฉัน แต่ฉันคิดว่ามันไม่มีประสิทธิภาพมากที่จะทำสิ่งนี้สำหรับทุก ๆ recyclerview

  • ใช้ระยะขอบสูงสุด 8dp ซึ่งทำให้เกิดปัญหาว่า recyclerview มีแถบสีขาวอยู่ด้านบน / ล่างเมื่อเลื่อน

  • เพิ่มช่องว่างภายในรายการซึ่งส่งผลให้ระยะขอบที่แตกต่างกันระหว่างการ์ดด้านนอกและด้านใน

  • ฉันแน่ใจว่ามีวิธีแก้ปัญหาง่ายๆที่ฉันยังไม่รู้

    คำตอบ:


    403

    การเพิ่มการเติมด้านบนและการตั้งค่าclipToPaddingเป็นเท็จจะเป็นการหลอกลวง
    บางสิ่งเช่นนี้

      <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
    ใช้งานได้ดี แต่ด้วยเหตุผลบางอย่างไม่ใช่ด้านล่าง
    Benjamin

    4
    คุณใช้ไลบรารี่สนับสนุนเวอร์ชันใดอยู่ การตั้ง paddingBottom ใช้ได้ดีสำหรับฉัน
    Estel

    2
    ไม่ได้ผลกับฉันทั้งใน api 23 ฉันกำลังลองใช้ android: paddingBottom = "8dp" android: clipToPadding = "false"
    techtinkerer

    1
    paddingBottom ใช้ได้กับฉัน, recyclerview-v7-25.3.1
    Nino van Hooff

    1
    วิธีนี้แก้ปัญหาแถบเลื่อนได้ ทางออกใดที่จะ?
    เซบาสเตียน

    2

    หากคุณใช้ RecyclerView ร่วมกับ a 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 ทำให้มุมมองหายไป ฉันทำอะไรบางอย่างหายไปหรือเปล่า
    ซาก้า

    เพียงลบน้ำหนัก = "1" และตั้งค่า layout_height เป็น match_parent
    Mike
    โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
    Licensed under cc by-sa 3.0 with attribution required.