RecyclerView
ตารางนี้แสดงอาร์ติแฟกต์ทั้งหมดในกลุ่ม androidx.recyclerview
| อาร์ติแฟกต์ | รุ่นที่เสถียร | รุ่นที่อาจได้รับการเผยแพร่ | รุ่นเบต้า | รุ่นอัลฟ่า |
|---|---|---|---|---|
| recyclerview | 1.4.0 | - | - | - |
| recyclerview-selection | 1.2.0 | - | - | 1.3.0-alpha01 |
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มการอ้างอิงใน RecyclerView คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมได้ที่ที่เก็บ Maven ของ Google
เพิ่มทรัพยากร Dependency สำหรับอาร์ติแฟกต์ที่ต้องการในไฟล์ build.gradle สำหรับ
แอปหรือโมดูล
ดึงดูด
dependencies { implementation "androidx.recyclerview:recyclerview:1.4.0" // For control over item selection of both touch and mouse driven selection implementation "androidx.recyclerview:recyclerview-selection:1.2.0" }
Kotlin
dependencies { implementation("androidx.recyclerview:recyclerview:1.4.0") // For control over item selection of both touch and mouse driven selection implementation("androidx.recyclerview:recyclerview-selection:1.2.0") }
ดูข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาได้ที่เพิ่มการพึ่งพาบิลด์
ความคิดเห็น
ความคิดเห็นของคุณช่วยเราปรับปรุง Jetpack ให้ดียิ่งขึ้น โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมี ไอเดียในการปรับปรุงไลบรารีนี้ โปรดดูปัญหาที่มีอยู่ ในไลบรารีนี้ก่อนสร้างปัญหาใหม่ คุณสามารถโหวตปัญหาที่มีอยู่ได้โดย คลิกปุ่มดาว
ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของเครื่องมือติดตามปัญหา
เวอร์ชัน 1.4
เวอร์ชัน 1.4.0
15 มกราคม 2025
androidx.recyclerview:recyclerview:1.4.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่ RecyclerView 1.3.2
Adaptiveการรองรับอัตราการรีเฟรช:RecyclerViewจะเรียกใช้setFrameContentVelocityเมื่อเลื่อนผ่านOverScroller(เช่น การเลื่อนจากฟลิงหรือการเลื่อนแบบสมูท) (I8f8a4)
เวอร์ชัน 1.4.0-rc01
18 กันยายน 2024
androidx.recyclerview:recyclerview:1.4.0-rc01 เปิดตัวแล้ว โดยไม่มีการเปลี่ยนแปลงนับตั้งแต่ 1.4.0-alpha02/ เวอร์ชัน 1.4.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงตั้งแต่เวอร์ชัน 1.3.2
หมายเหตุความเข้ากันได้: เวอร์ชันนี้จะคอมไพล์กับ SDK ของ API 35 (Vanilla Ice Cream) ขึ้นไปเท่านั้น หากเห็นคำเตือน AGP (ปลั๊กอิน Gradle สำหรับ Android) เมื่ออัปเกรด คุณสามารถระงับคำเตือนเหล่านั้นได้
ฟีเจอร์ใหม่
Adaptiveการรองรับอัตราการรีเฟรช:RecyclerViewจะเรียกใช้setFrameContentVelocityเมื่อเลื่อนผ่านOverScroller(เช่น การเลื่อนจากฟลิงหรือการเลื่อนแบบสมูท) (I8f8a4)
การเปลี่ยนแปลง API
- เพิ่ม
RecyclerView$LayoutManager#isLayoutReversedAPI (I4970e)
การเปลี่ยนแปลงอื่นๆ
- นำการระบุสิทธิ์เข้าถึง API ของแพลตฟอร์มใหม่ด้วยตนเองออก เนื่องจากระบบจะดำเนินการนี้โดยอัตโนมัติผ่านการสร้างโมเดล API เมื่อใช้ R8 กับ AGP 7.3 ขึ้นไป (เช่น R8 เวอร์ชัน 3.3) และสำหรับการสร้างทั้งหมดเมื่อใช้ AGP 8.1 ขึ้นไป (เช่น D8 เวอร์ชัน 8.1) เราขอแนะนำให้ลูกค้าที่ไม่ได้ใช้ AGP อัปเดตเป็น D8 เวอร์ชัน 8.1 ขึ้นไป ดูบทความนี้สำหรับรายละเอียดเพิ่มเติม (Ia60e0, b/345472586)
- เพิ่มประเภทการดูรายการไปยัง
RecyclerViewส่วนการเชื่อมโยง/สร้างการติดตาม และติดป้ายกำกับการดึงข้อมูลล่วงหน้าของ RV เป็น "บังคับ - ต้องใช้เฟรมถัดไป" หากคาดว่าจะใช้ในเฟรมถัดไป และควรเริ่มทำงานโดยเร็วที่สุด (I8ec3e, b/309523615) - อัปเดต
compileSdkเป็น 35 (ดูรายละเอียดใน "หมายเหตุเกี่ยวกับความเข้ากันได้" ด้านบน) 5dc41be
เวอร์ชัน 1.4.0-beta01
21 สิงหาคม 2024
androidx.recyclerview:recyclerview:1.4.0-beta01 เปิดตัวแล้วโดยไม่มีการเปลี่ยนแปลงนับตั้งแต่ 1.4.0-alpha02 เวอร์ชัน 1.4.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
หมายเหตุความเข้ากันได้: เวอร์ชันนี้จะคอมไพล์กับ SDK ของ API 35 (Vanilla Ice Cream) ขึ้นไปเท่านั้น หากเห็นคำเตือน AGP (ปลั๊กอิน Gradle สำหรับ Android) เมื่ออัปเกรด คุณสามารถระงับคำเตือนเหล่านั้นได้
เวอร์ชัน 1.4.0-alpha02
7 สิงหาคม 2024
androidx.recyclerview:recyclerview:1.4.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha02 มีคอมมิตเหล่านี้
หมายเหตุความเข้ากันได้: เวอร์ชันนี้จะคอมไพล์กับ SDK ของ API 35 (Vanilla Ice Cream) ขึ้นไปเท่านั้น หากเห็นคำเตือน AGP (ปลั๊กอิน Gradle สำหรับ Android) เมื่ออัปเกรด คุณสามารถระงับคำเตือนเหล่านั้นได้
ฟีเจอร์ใหม่
- การรองรับอัตราการรีเฟรชแบบแปรผัน: ตอนนี้ RecyclerView จะเรียกใช้
setFrameContentVelocityเมื่อเลื่อนผ่าน OverScroller (เช่น การเลื่อนจากฟีเจอร์การปัดหรือการเลื่อนแบบราบรื่น) (I8f8a4)
การเปลี่ยนแปลง API
- เลิกใช้งาน
ViewCompat.LAYOUT_DIRECTION_API (I51710, b/317055535) - เพิ่ม
RecyclerView$LayoutManager#isLayoutReversedAPI (I4970e)
การเปลี่ยนแปลงอื่นๆ
- นำการระบุสิทธิ์เข้าถึง API ของแพลตฟอร์มใหม่ด้วยตนเองออก เนื่องจากระบบจะดำเนินการนี้โดยอัตโนมัติผ่านการสร้างโมเดล API เมื่อใช้ R8 กับ AGP 7.3 ขึ้นไป (เช่น R8 เวอร์ชัน 3.3) และสำหรับการสร้างทั้งหมดเมื่อใช้ AGP 8.1 ขึ้นไป (เช่น D8 เวอร์ชัน 8.1) เราขอแนะนำให้ลูกค้าที่ไม่ได้ใช้ AGP อัปเดตเป็น D8 เวอร์ชัน 8.1 ขึ้นไป ดูบทความนี้สำหรับรายละเอียดเพิ่มเติม (Ia60e0, b/345472586)
- เพิ่มประเภทการดูรายการไปยัง
RecyclerViewส่วนการเชื่อมโยง/สร้างการติดตาม และติดป้ายกำกับการดึงข้อมูลล่วงหน้าของ RV เป็น "บังคับ - ต้องใช้เฟรมถัดไป" หากคาดว่าจะใช้ในเฟรมถัดไป และควรเริ่มทำงานโดยเร็วที่สุด (I8ec3e, b/309523615) - อัปเดต
compileSdkเป็น 35 (ดูรายละเอียดใน "หมายเหตุเกี่ยวกับความเข้ากันได้" ด้านบน) 5dc41be
การมีส่วนร่วมภายนอก
- ตอนนี้เราเลิกใช้งาน
GestureDetectorCompatแล้ว เนื่องจากGestureDetectorพร้อมให้บริการจากminSdk(Icc4cd)
เวอร์ชัน 1.4.0-alpha01
18 ตุลาคม 2023
androidx.recyclerview:recyclerview:1.4.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่ม
RecyclerView$LayoutManager#isLayoutReversedAPI (I4970e)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้เกิดข้อขัดข้องเป็นครั้งคราวระหว่างภาพเคลื่อนไหว (I42f22b) (รวมอยู่ใน 1.3.2 ด้วย)
เวอร์ชัน 1.3.2
เวอร์ชัน 1.3.2
18 ตุลาคม 2023
androidx.recyclerview:recyclerview:1.3.2 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.2 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้เกิดข้อขัดข้องเป็นครั้งคราวระหว่างภาพเคลื่อนไหว (I42f22b)
เวอร์ชัน 1.3.1
เวอร์ชัน 1.3.1
26 กรกฎาคม 2023
androidx.recyclerview:recyclerview:1.3.1 เปิดตัวแล้ว โดยไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่เวอร์ชัน 1.3.1-rc01 เวอร์ชัน 1.3.1 มีคอมมิตเหล่านี้
ดูบันทึกประจำรุ่นของรุ่นก่อนหน้าได้ที่หน้าบันทึกประจำรุ่น
เวอร์ชัน 1.3.1-rc01
24 พฤษภาคม 2023
androidx.recyclerview:recyclerview:1.3.1-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.1-rc01 มีคอมมิตเหล่านี้
ผู้ใช้ ViewPager2 ต้องอัปเดตเป็นเวอร์ชัน 1.1.0-beta02 เป็นอย่างน้อยเมื่ออัปเดตเป็น RecyclerView เวอร์ชันนี้เพื่อหลีกเลี่ยงข้อขัดข้อง
การเปลี่ยนแปลง API
- เพิ่มเมธอดใหม่
setDebugAssertionsEnabledและsetVerboseLoggingEnabledที่ช่วยในการแก้ไขข้อบกพร่องที่เกี่ยวข้องกับRecyclerViewในแอป (I514b9)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อขัดข้องสำหรับผู้ใช้
ViewTreeLifecycleOwner(รวมถึงComposeView) โดยการแนบมุมมองที่แยกออกชั่วคราวอีกครั้งเมื่อเรียกใช้onBind(I7244f2c, b/265347515, b/283288295)
เวอร์ชัน 1.3.0
เวอร์ชัน 1.3.0
8 มีนาคม 2023
androidx.recyclerview:recyclerview:1.3.0 เปิดตัวแล้ว โดยไม่มีการเปลี่ยนแปลงตั้งแต่ 1.3.0-rc01 เวอร์ชัน 1.3.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.2.0
- รุ่นนี้มีการปรับปรุงประสิทธิภาพ (ก่อนหน้านี้รวมอยู่ใน 1.3.0-alpha02 และ 1.3.0-beta01) เมื่อใช้กับ Jetpack Compose หากคุณใช้ Compose
1.2.0-beta02ขึ้นไปและใช้MyComposeAdapterและDisposeOnViewTreeLifecycleDestroyedViewCompositionStrategyที่อธิบายไว้ในหลักเกณฑ์การทำงานร่วมกันก่อนหน้านี้ คุณควรนำออก เนื่องจากไม่ได้เป็นการปรับปรุงสถานะเริ่มต้นอีกต่อไป - เพิ่มเมธอด
ConcatAdapter.getWrappedAdapterAndPositionใหม่เพื่อให้ดึงข้อมูลอแดปเตอร์ที่ห่อหุ้มได้ในกรณีที่คุณไม่มีViewHolderเช่นSpanSizeLookup(I2bd4c, b/191543920)
เวอร์ชัน 1.3.0-rc01
21 กันยายน 2022
androidx.recyclerview:recyclerview:1.3.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-rc01 มีคอมมิตต่อไปนี้
- ไม่มีการเปลี่ยนแปลงนับตั้งแต่เวอร์ชันล่าสุด
เวอร์ชัน 1.3.0-beta02
10 สิงหาคม 2022
androidx.recyclerview:recyclerview:1.3.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta02 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- นำคำอธิบายประกอบเกี่ยวกับค่า Null ที่เพิ่มใน 1.3.0-beta01 ออกเนื่องจากเป็นแหล่งที่มาของการเปลี่ยนแปลงที่เข้ากันไม่ได้สำหรับผู้ใช้ Kotlin (I7a258,I1557e6,I8db76)
เวอร์ชัน 1.3.0-beta01
29 มิถุนายน 2022
androidx.recyclerview:recyclerview:1.3.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta01 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- รุ่นเบต้านี้มีการปรับปรุงประสิทธิภาพ (ก่อนหน้านี้รวมอยู่ใน 1.3.0-alpha02 เมื่อใช้กับ Jetpack Compose หากคุณใช้ Compose
1.2.0-beta02ขึ้นไปและใช้MyComposeAdapterและDisposeOnViewTreeLifecycleDestroyedViewCompositionStrategyที่อธิบายไว้ในหลักเกณฑ์การทำงานร่วมกันก่อนหน้านี้ คุณควรนำออก เนื่องจากไม่ได้เป็นการปรับปรุงสถานะเริ่มต้นอีกต่อไป
การเปลี่ยนแปลง API
- เพิ่มคำอธิบายประกอบการยอมรับค่า Null สำหรับเมธอดและพารามิเตอร์จำนวนหนึ่งเพื่อปรับปรุงคำเตือนของ Lint สำหรับผู้ใช้ Java และการทำงานร่วมกันสำหรับผู้ใช้ Kotlin การเปลี่ยนแปลงนี้อาจเป็นการเปลี่ยนแปลงที่ทำให้เกิดข้อผิดพลาดในแหล่งที่มาสำหรับผู้ใช้ Kotlin บางราย และอาจส่งผลให้ผู้ใช้ Java บางรายได้รับคำเตือน/ข้อผิดพลาดเพิ่มเติมจาก Lint (I61829, b/236487044; Ia0b6f; I6f119, b/236487209; Ibe1de, b/236487210)
การแก้ไขข้อบกพร่อง
- ตรวจสอบว่าบริการช่วยเหลือพิเศษถือว่าตารางเป็นตารางโดยการตั้งชื่อคลาสข้อมูลโหนดการช่วยเหลือพิเศษ (I12812)
เวอร์ชัน 1.3.0-alpha02
6 เมษายน 2022
androidx.recyclerview:recyclerview:1.3.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มเมธอด
BuildCompatเวอร์ชันทดลองสำหรับ SDK ในอนาคต (Iafd82, b/207528937) - เพิ่มเมธอด
ConcatAdapter.getWrappedAdapterAndPositionใหม่เพื่อให้ดึงข้อมูลอแดปเตอร์ที่ห่อหุ้มไว้ได้ในกรณีที่คุณไม่มี ViewHolder เช่นSpanSizeLookup(I2bd4c, b/191543920)
การแก้ไขข้อบกพร่อง
- การผสานรวมกับไลบรารี PoolingContainer ใหม่ของ AndroidX (Ib89d2)
- ปรับระยะการเลื่อนสำหรับการดำเนินการด้านการช่วยเหลือพิเศษ (If74ae)
เวอร์ชัน 1.3.0-alpha01
15 กันยายน 2021
androidx.recyclerview:recyclerview:1.3.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha01 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มการรองรับ RecyclerView ที่เลื่อนเกินขอบเขตแบบยืด (Iab877)
RecyclerView-Selection เวอร์ชัน 1.3.0
เวอร์ชัน 1.3.0-alpha01
17 ธันวาคม 2025
androidx.recyclerview:recyclerview-selection:1.3.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- อนุญาตให้ฮอตสปอตในส่วนที่เลือกยกเลิกการเลือกที่มีอยู่ (I0eae7, b/389814214) ซึ่งจะช่วยให้นักพัฒนาแอปควบคุมได้มากขึ้นเมื่อแตะหรือคลิก
RecyclerViewเพื่อเลือกรายการ ไม่ว่ารายการอื่นๆ ที่เลือกไว้แล้วจะยังคงเลือกอยู่หรือถูกยกเลิกการเลือก
RecyclerView-Selection เวอร์ชัน 1.2.0
เวอร์ชัน 1.2.0
20 พฤษภาคม 2025
androidx.recyclerview:recyclerview-selection:1.2.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0
- แก้ไขการเคลื่อนเมาส์เล็กน้อยที่เปลี่ยนการคลิกเป็นการลาก
- แก้ไขปัญหาที่การแมปรหัส/ตำแหน่งใน KeyProvider หายไปในขณะที่ยังไม่ได้รีไซเคิลรายการ
เวอร์ชัน 1.2.0-rc01
7 พฤษภาคม 2025
androidx.recyclerview:recyclerview-selection:1.2.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขการเคลื่อนเมาส์เล็กน้อยที่เปลี่ยนการคลิกเป็นการลาก (Ie9106)
เวอร์ชัน 1.2.0-beta01
9 เมษายน 2025
androidx.recyclerview:recyclerview-selection:1.2.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เลิกใช้งาน
ViewCompat.LAYOUT_DIRECTION_API (I51710, b/317055535)
การแก้ไขข้อบกพร่อง
- ตอนนี้ไลบรารีนี้ใช้คำอธิบายประกอบเกี่ยวกับค่า Null ของ JSpecify ซึ่งเป็นการใช้งานประเภท นักพัฒนาซอฟต์แวร์ Kotlin ควรใช้อาร์กิวเมนต์คอมไพเลอร์ต่อไปนี้เพื่อบังคับใช้การใช้งานที่ถูกต้อง
-Xjspecify-annotations=strict(นี่คือค่าเริ่มต้นที่เริ่มต้นด้วยคอมไพเลอร์ Kotlin เวอร์ชัน 2.1.0) (I03b80, b/326456246)
เวอร์ชัน 1.2.0-alpha01
5 พฤษภาคม 2021
androidx.recyclerview:recyclerview-selection:1.2.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha01 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่การแมปรหัส/ตำแหน่งใน KeyProvider หายไปในขณะที่ยังไม่ได้รีไซเคิลรายการ (b/145767095)
เวอร์ชัน 1.2.1
เวอร์ชัน 1.2.1
2 มิถุนายน 2021
androidx.recyclerview:recyclerview:1.2.1 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.1 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
ViewHolderภายในConcatAdapterจะแสดงตำแหน่งอะแดปเตอร์ที่ถูกต้องเมื่อมีการค้นหาในแฮนเดิลonViewRecycled(b/187339376)
เวอร์ชัน 1.2.0
เวอร์ชัน 1.2.0
7 เมษายน 2021
androidx.recyclerview:recyclerview:1.2.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0
ConcatAdapter: อะแดปเตอร์ใหม่นี้ช่วยให้คุณต่ออะแดปเตอร์หลายตัวใน RecyclerView เดียวกันได้อย่างง่ายดาย ดูข้อมูลเพิ่มเติมได้ที่บล็อกโพสต์
- ส่วนหนึ่งของการเปลี่ยนแปลงนี้คือ เราได้เลิกใช้งาน
ViewHolder.getAdapterPositionและแทนที่ด้วย 2 วิธีใหม่ ดังนี้- getBindingAdapterPosition จะแสดงผลตำแหน่งที่สัมพันธ์กับอะแดปเตอร์ที่เชื่อมโยงรายการนั้น
- getAbsoluteAdapterPosition จะแสดงผลตำแหน่งที่สัมพันธ์กับ RecyclerView ทั้งหมด
การคืนค่าสถานะแบบเลื่อนเวลา: ตอนนี้ RecyclerView Adapter สามารถเลื่อนการคืนค่าสถานะจนกว่าจะโหลดเนื้อหาเสร็จแล้วได้ ดูรายละเอียดเพิ่มเติมในเอกสารประกอบ
เวอร์ชัน 1.2.0-rc01
24 มีนาคม 2021
androidx.recyclerview:recyclerview:1.2.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-rc01 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
ConcatAdapter.Config.Builderมีค่าเริ่มต้นที่ตรงกับConfig.DEFAULTแล้ว (b/157169835)
เวอร์ชัน 1.2.0-beta02
24 กุมภาพันธ์ 2021
androidx.recyclerview:recyclerview:1.2.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-beta02 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่การเว้นวรรคด้านบนทำให้แสงเรืองขวาเลื่อนขึ้นไปยังพื้นที่เว้นวรรคแทนที่จะเลื่อนลงเพื่อให้เป็นไปตามการเว้นวรรค (I6b61d, b/118399122)
เวอร์ชัน 1.2.0-beta01
2 ธันวาคม 2020
androidx.recyclerview:recyclerview:1.2.0-beta01 เปิดตัวโดยไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่ 1.2.0-alpha06 เวอร์ชัน 1.2.0-beta01 มีคอมมิตเหล่านี้
เวอร์ชัน 1.2.0-alpha06
1 ตุลาคม 2020
androidx.recyclerview:recyclerview:1.2.0-alpha06 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha06 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มการรองรับการเพิ่ม RecyclerListener หลายรายการ (I70ad8, b/145767095)
การเปลี่ยนแปลง API
- เลิกใช้งาน RecyclerView.setRecyclerListener(RecyclerListener) แล้ว (I70ad8, b/145767095)
เวอร์ชัน 1.2.0-alpha05
22 กรกฎาคม 2020
androidx.recyclerview:recyclerview:1.2.0-alpha05 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha05 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ปัญหาที่หาก RecyclerView มีเพียง 1 รายการและมีการโฟกัส การโฟกัสไปข้างหน้าหรือข้างหลังจะไม่ย้ายโฟกัส (6f36b3)
- แก้ไข
ArrayIndexOutOfBoundsExceptionในStaggeredGridLayoutManager(49b601, b/122303625, b/74877618, b/160193663, b/37086625) - แก้ไขข้อบกพร่องในการวัดผลซึ่งในบางกรณี RecyclerView จะไม่แสดงรายการย่อยอย่างไม่เหมาะสม (89040c, b/138734786)
การมีส่วนร่วมภายนอก
- ขอขอบคุณ Kolin Krewinkel ในนามของ Facebook สำหรับการมีส่วนร่วม
เวอร์ชัน 1.2.0-alpha04
24 มิถุนายน 2020
androidx.recyclerview:recyclerview:1.2.0-alpha04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
MergeAdapterเปลี่ยนชื่อเป็นConcatAdapterเพื่อหลีกเลี่ยงความสับสนเกี่ยวกับลักษณะการผสานข้อมูลที่แตกต่างกัน (c0540c, b/158019211)
การแก้ไขข้อบกพร่อง
- การปรับปรุงการเลื่อนอัตโนมัติเมื่อนำรายการที่มองเห็นทั้งหมดออก (fe8670, b/154124815)
เวอร์ชัน 1.2.0-alpha03
29 เมษายน 2020
androidx.recyclerview:recyclerview:1.2.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha03 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- ตอนนี้ RecyclerView มีเมธอด
nestedScrollByที่อนุญาตการเลื่อนแบบเป็นโปรแกรมซึ่งทำงานร่วมกับการเลื่อนที่ซ้อนกันแล้ว (Ibaa58)
เวอร์ชัน 1.2.0-alpha02
1 เมษายน 2020
androidx.recyclerview:recyclerview:1.2.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha02 มีคอมมิตเหล่านี้
RecyclerView เวอร์ชันนี้และเวอร์ชันที่สูงกว่าใช้ร่วมกับ ViewPager2 เวอร์ชันที่ต่ำกว่าไม่ได้ หากปัจจุบันคุณใช้ androidx.viewpager2:viewpager2:1.0.0 หรือต่ำกว่า โปรดอัปเดตเป็น androidx.viewpager2:viewpager2:1.1.0-alpha01
ฟีเจอร์ใหม่
MergeAdapter
- MergeAdapter: อะแดปเตอร์ RecyclerView ใหม่ที่รวมอะแดปเตอร์หลายรายการแบบเชิงเส้นได้
MyAdapter adapter1 = ...; AnotherAdapter adapter2 = ...; MergeAdapter merged = new MergeAdapter(adapter1, adapter2); recyclerView.setAdapter(mergedAdapter);สำหรับตัวอย่างด้านบน MergeAdapter จะแสดงรายการจาก
adapter1ตามด้วยadapter2RecyclerView.Adapterการคืนค่าสถานะแบบ Lazy:เพิ่ม API ใหม่ลงในคลาส
RecyclerView.Adapterซึ่งช่วยให้ Adapter ควบคุมเวลาที่ควรคืนค่าสถานะเลย์เอาต์ได้เช่น คุณสามารถโทรหา
myAdapter.setStateRestorationStrategy(StateRestorationStrategy.WHEN_NOT_EMPTY);เพื่อทำให้ RecyclerView รอจนกว่า Adapter จะไม่ว่างเปล่าก่อนที่จะกู้คืนตำแหน่งการเลื่อน
ระบบจะไม่สร้าง CollectionInfo และ CollectionItemInfo โดยค่าเริ่มต้นอีกต่อไป
หากต้องการให้ Accessibility Services (เช่น Talkback) ระบุจำนวนและดัชนีรายการแก่ผู้ใช้ต่อไป คุณจะต้องป้อนข้อมูล CollectionInfo และ CollectionItemInfo ด้วยตนเอง
ระบบจะไม่แสดงออบเจ็กต์เหล่านี้ในเฟรมเวิร์กอีกต่อไป เนื่องจากเฟรมเวิร์กไม่สามารถระบุจำนวนรายการตามที่ผู้ใช้รับรู้ (เช่น ตัวคั่น ส่วนหัว หรือรายการ RecyclerView ที่แสดงรายการที่รับรู้หลายรายการ)
การแก้ไขข้อบกพร่อง
- ตอนนี้ RecyclerView จะหลีกเลี่ยงการยึด View นอกวิวพอร์ตเมื่อขนาดวิวพอร์ตมีการเปลี่ยนแปลง
- แก้ไขข้อบกพร่องใน DiffUtil ซึ่งอาจคำนวณความแตกต่างไม่ถูกต้องเมื่อรายการเดิมในรายการแรกซ้ำกันหลายครั้งในรายการที่สอง (b/123376278)
เวอร์ชัน 1.2.0-alpha01
18 ธันวาคม 2019
androidx.recyclerview:recyclerview:1.2.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha01 มีคอมมิตเหล่านี้
แก้ไขข้อบกพร่อง
- แก้ไขปัญหาเล็กน้อยเกี่ยวกับ FastScroller ที่เกี่ยวข้องกับการวาด RTL และความแม่นยำในการสัมผัส (b/143789932, aosp/1130438)
- แก้ไขข้อขัดข้องใน ItemTouchHelper เมื่อนำออกจาก RecyclerView ขณะที่ภาพเคลื่อนไหว ItemTouchHelper กำลังทำงาน (b/140447176, aosp/1167575)
เวอร์ชัน 1.1.0
เวอร์ชัน 1.1.0
20 พฤศจิกายน 2019
androidx.recyclerview:recyclerview:1.1.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.0.0
PagerSnapHelperและLinearSnapHelperจะพิจารณาการเว้นวรรคของ RecyclerView โดยไม่คำนึงถึงค่าของclipToPadding(b/139452422, b/139012032, aosp/1103182, aosp/1106715, aosp/1130728)RecyclerView.setLayoutTransition(LayoutTransition)ถูกเลิกใช้งานอย่างเป็นทางการแล้ว และจะแสดงIllegalArgumentExceptionเมื่อเรียกใช้ด้วยค่าที่ไม่ใช่ค่าว่าง โปรดใช้RecyclerView.setItemAnimator(ItemAnimator)แทน (aosp/839414)- aosp/723649: ตอนนี้ RecyclerView ใช้
NestedScrollingChild3แล้ว ซึ่งช่วยให้ทราบได้ว่าเมื่อใดที่ผู้ปกครองการเลื่อนที่ซ้อนกันทั้งหมดหยุดใช้ระยะทางการเลื่อนที่ซ้อนกัน หากปัจจุบันโค้ดของนักพัฒนาซอฟต์แวร์ลบล้างRecyclerView.onNestedScroll(View, int, int, int, int, int)โค้ดดังกล่าวอาจไม่ได้รับการเรียกใช้อีกต่อไป และควรลบล้างRecyclerView.onNestedScroll(View, int, int, int, int, int, int[])แทน - ตอนนี้ RecyclerView มีแอตทริบิวต์รูปแบบเริ่มต้นแล้วคือ
recyclerViewStyleซึ่งช่วยให้คุณตั้งค่ารูปแบบเริ่มต้นในธีมได้ - API การดำเนินการเพื่อการช่วยเหลือพิเศษของ ViewCompat จะไม่ทำให้ RecyclerView ItemDelegate หยุดทำงานอีกต่อไป
LinearLayoutManager.calculateExtraLayoutSpace(RecyclerView.State, int[])สามารถลบล้างเพื่อปรับแต่งจำนวนพื้นที่เลย์เอาต์เพิ่มเติมที่ควรเพิ่มในด้านใดด้านหนึ่งของ RecyclerView ที่เชื่อมโยง (aosp/931259)- เพิ่มการโอเวอร์โหลดใหม่ของ smoothScrollBy:
RecyclerView#smoothScrollBy(@Px int, @Px int, @Nullable Interpolator, int duration)ซึ่งช่วยให้คุณระบุระยะเวลาเป็นมิลลิวินาทีสำหรับระยะเวลาที่ควรใช้ในการเคลื่อนไหวได้ (aosp/952807)
เวอร์ชัน 1.1.0-rc01
23 ตุลาคม 2019
androidx.recyclerview:recyclerview:1.1.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-rc01 มีคอมมิตเหล่านี้
แก้ไขข้อบกพร่อง
- แก้ไขข้อผิดพลาด "แอปพลิเคชันไม่ตอบสนอง" เมื่อลบล้าง
RecyclerViewAccessibilityDelegate.ItemDelegate(aosp/1138057, aosp/1133434)
เวอร์ชัน 1.1.0-beta05
9 ตุลาคม 2019
androidx.recyclerview:recyclerview:1.1.0-beta05 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-beta05 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- จาก aosp/1106715 และ aosp/1103182 ตอนนี้ LinearSnapHelper และ PagerSnapHelper จะแสดงผลมุมมองที่อยู่ตรงกลางขอบเขตของ RecyclerView ลบด้วยระยะขอบ แม้ว่าค่าของ clipToPadding จะเป็นอย่างไรก็ตาม (aosp/1130728)
แก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ RecyclerView สร้างโหนดการช่วยเหลือพิเศษที่ซ้ำกันสำหรับองค์ประกอบย่อยของ RecyclerView (aosp/1130618)
- แก้ไขปัญหาที่ลำดับชั้นการช่วยเหลือพิเศษเสมือนใน RecyclerView ไม่ทำงาน
- แก้ไขปัญหาที่ไม่ได้ใช้ ItemDelegate ที่กำหนดเอง
เวอร์ชัน 1.1.0-beta04
5 กันยายน 2019
androidx.recyclerview:recyclerview:1.1.0-beta04 ได้รับการเผยแพร่แล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
แก้ไขข้อบกพร่อง
PagerSnapHelperและLinearSnapHelperจะพิจารณาการเว้นวรรคของ RecyclerView โดยไม่คำนึงถึงค่าของclipToPadding(b/139452422, b/139012032, aosp/1103182, aosp/1106715)- แก้ไขข้อบกพร่องที่ RecyclerView ไม่อนุญาตการสกัดกั้นการแตะเมื่อการเลื่อนก่อนหน้าแบบซ้อนทำให้
NestedScrollingParentเลื่อน (b/138668210, aosp/1105373) ซึ่งเป็นประโยชน์ต่อไลบรารีต่างๆ เช่น ViewPager2 - ตอนนี้ RecyclerView จะไปที่
SCROLL_STATE_DRAGGINGอย่างสม่ำเสมอก่อนที่จะส่งการเลื่อนก่อนหน้าแบบซ้อนกัน (aosp/1105373) - ระบบจะไม่ทำการเลื่อนก่อนการเลื่อนที่ซ้อนกันอีกต่อไปก่อนที่ท่าทางสัมผัสจะเกินค่าความคลาดเคลื่อนจากการสัมผัส (b/139530818, aosp/1105373)
- อาร์กิวเมนต์
dxและdyที่ส่งไปยังการเลื่อนก่อนการเลื่อนแบบซ้อนจะกลายเป็น 0 เมื่อ RecyclerView เลื่อนไปในทิศทางนั้นไม่ได้ (aosp/1105373)
เวอร์ชัน 1.1.0-beta03
15 สิงหาคม 2019
androidx.recyclerview:recyclerview:1.1.0-beta03 ได้รับการเผยแพร่แล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
การเปลี่ยนแปลง API
- ตอนนี้ RecyclerView จะส่งระยะการเลื่อนผ่าน
View.onScrollChanged(int l, int t, int oldl, int oldt)เพื่อให้ระบบจะแจ้งการเปลี่ยนแปลงการเลื่อนไปยังบริการการช่วยเหลือพิเศษได้อย่างถูกต้อง (aosp/1007823)
แก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่สำคัญใน Stack Overflow ที่เกี่ยวข้องกับ RecyclerView และการช่วยเหลือพิเศษ (aosp/1099577)
เวอร์ชัน 1.1.0-beta02
7 สิงหาคม 2019
androidx.recyclerview:recyclerview:1.1.0-beta02 ได้รับการเผยแพร่แล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
ฟีเจอร์ใหม่
- ตอนนี้ RecyclerView มีแอตทริบิวต์รูปแบบเริ่มต้นแล้วคือ
recyclerViewStyleซึ่งช่วยให้คุณตั้งค่ารูปแบบเริ่มต้นในธีมได้
แก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ RecyclerView ไม่อนุญาตการสกัดกั้นการแตะเมื่อเลื่อน ซึ่งทำให้ NestedScrollingParent เลื่อน (b/131115697, aosp/1055911)
เวอร์ชัน 1.1.0-beta01
2 กรกฎาคม 2019
androidx.recyclerview:recyclerview:1.1.0-beta01 ได้รับการเผยแพร่แล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
ฟีเจอร์ใหม่
RecyclerViewตอนนี้จะเข้าร่วมการเลื่อนที่ซ้อนกันเมื่อเริ่มการเลื่อนผ่านเหตุการณ์การช่วยเหลือพิเศษ (aosp/973584)
เวอร์ชัน 1.1.0-alpha06
5 มิถุนายน 2019
androidx.recyclerview:recyclerview:1.1.0-alpha06 และ androidx.recyclerview:recyclerview-selection:1.1.0-alpha06 เปิดตัวแล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
ฟีเจอร์ใหม่
- เพิ่มการโอเวอร์โหลดใหม่ของ smoothScrollBy:
RecyclerView#smoothScrollBy(@Px int, @Px int, @Nullable Interpolator, int duration)ซึ่งช่วยให้คุณระบุระยะเวลาเป็นมิลลิวินาทีสำหรับระยะเวลาที่ควรใช้ในการเคลื่อนไหวได้ (aosp/952807)
การเปลี่ยนแปลง API
GridLayoutManagerและStaggeredGridLayoutManagerจะไม่ติดป้ายกำกับรายการแบบเต็มช่วงเป็นส่วนหัวโดยอัตโนมัติเพื่อวัตถุประสงค์ในการช่วยเหลือพิเศษอีกต่อไป (aosp/969703)- รักษลําดับการเลือก (ตามเวลาที่สร้าง) ใน
recyclerview-selection(aosp/937279)
แก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้
RecyclerViewเคลื่อนที่ด้วยความเร็วที่ไม่ถูกต้องขณะอยู่ในสถานการณ์การเลื่อนที่ซ้อนกัน (aosp/961642) - เพิ่มการปรับปรุงความเสถียรใน
recyclerview-selection(aosp/960213, aosp/926296)
เวอร์ชัน 1.1.0-alpha05
7 พฤษภาคม 2019
androidx.recyclerview:recyclerview:1.1.0-alpha05 และ androidx.recyclerview:recyclerview-selection:1.1.0-alpha05 เปิดตัวแล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
ฟีเจอร์ใหม่
LinearLayoutManager.calculateExtraLayoutSpace(RecyclerView.State, int[])สามารถลบล้างเพื่อปรับแต่งจำนวนพื้นที่เลย์เอาต์เพิ่มเติมที่ควรเพิ่มในด้านใดด้านหนึ่งของ RecyclerView ที่เชื่อมโยง (aosp/931259)
การเปลี่ยนแปลง API
- เพิ่ม API เพื่อดึงข้อมูล Drawable
DividerItemDecoration(aosp/937282) - เลิกใช้งาน
LinearLayout.getExtraLayoutSpace(RecyclerVew.State)เพื่อใช้กลไกใหม่ที่ช่วยให้มีพื้นที่เลย์เอาต์เพิ่มเติมที่กำหนดเองได้ทั้ง 2 ด้าน วิธีใหม่คือLinearLayout.calculateExtraLayoutSpace(RecyclerView.state, int[])(aosp/931259)
แก้ไขข้อบกพร่อง
- การเลือกด้วยท่าทางสัมผัสที่ปรับปรุงแล้ว (aosp/940781)
- รักษลําดับการเลือก (ตามเวลาที่สร้าง) (b/128455535)
เวอร์ชัน 1.1.0-alpha04
3 เมษายน 2019
androidx.recyclerview:recyclerview:1.1.0-alpha04 ได้รับการเผยแพร่แล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
แก้ไขข้อบกพร่อง
- ก่อนหน้านี้ RV OnItemTouchListener ไม่สามารถสกัดกั้น ACTION_UP ได้ ซึ่งทำให้ OnItemTouchListener ไม่สามารถบล็อกโค้ดอื่นๆ ไม่ให้ตอบสนองต่อ ACTION_UP ตอนนี้เราได้แก้ไขปัญหานี้แล้ว (aosp/916137)
เวอร์ชัน 1.1.0-alpha03
13 มีนาคม 2019
androidx.recyclerview:recyclerview:1.1.0-alpha03 ได้รับการเผยแพร่แล้ว ดูรายการคอมมิตทั้งหมดที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
ฟีเจอร์ใหม่
GridLayoutManager: เลือกใช้การประมาณขนาดแถบเลื่อนGridLayoutManagerความละเอียดสูง (aosp/838836)- ใช้ข้อมูลช่วงเพื่อประมาณขนาดแถบเลื่อนสำหรับ
GridLayoutManager - หากต้องการเปิดใช้ ให้เรียกใช้
GridLayoutManager#setUsingSpansToEstimateScrollbarDimensions(boolean)โดยส่งค่าเป็นจริง - ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบเกี่ยวกับ
GridLayoutManager#setUsingSpansToEstimateScrollbarDimensions(boolean)
- ใช้ข้อมูลช่วงเพื่อประมาณขนาดแถบเลื่อนสำหรับ
แก้ไขข้อบกพร่อง
- การช่วยเหลือพิเศษ: มีข้อบกพร่องที่เมื่อรีไซเคิล ViewHolder แล้วผูกอีกครั้ง ItemDelegate ที่เชื่อมโยงกับ
RecyclerViewAccessibilityDelegateของ RecyclerView จะไม่เชื่อมโยงกับ itemView ของ ViewHolder ซึ่งทำให้การช่วยเหลือพิเศษใช้งานไม่ได้ ตอนนี้ปัญหาได้รับการแก้ไขแล้ว (aosp/917740)
เวอร์ชัน 1.1.0-alpha02
30 มกราคม 2019
androidx.recyclerview:recyclerview 1.1.0-alpha02 ได้รับการเผยแพร่แล้ว
การเปลี่ยนแปลง API
RecyclerView.setLayoutFrozen(boolean)และRecyclerView.isLayoutFrozen()เลิกใช้งานแล้วเพื่อใช้RecyclerView.suppressLayout(boolean)และRecyclerView.isLayoutSuppressed()แทน (aosp/839414)RecyclerView.setLayoutTransition(LayoutTransition)ถูกเลิกใช้งานอย่างเป็นทางการแล้ว และจะแสดงIllegalArgumentExceptionเมื่อเรียกใช้ด้วยค่าที่ไม่ใช่ค่าว่าง (aosp/839414)
แก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องใน RV ที่
SmoothScrollerไม่เคยหยุด (aosp/843741) - แก้ไขข้อบกพร่องที่อาจไม่เรียกใช้
SCROLL_STATE_IDLEเมื่อสิ้นสุดภาพเคลื่อนไหวการเลื่อน (aosp/812576)
เวอร์ชัน 1.1.0-alpha01
3 ธันวาคม 2018
androidx.recyclerview 1.1.0-alpha01 และ androidx.recyclerview-selection 1.1.0-alpha01 เปิดตัวแล้ว
androidx.recyclerview 1.1.0-alpha01
การเปลี่ยนแปลง API
- aosp/723649: ตอนนี้ RecyclerView ใช้
NestedScrollingChild3แล้ว ซึ่งช่วยให้ทราบได้ว่าเมื่อใดที่ผู้ปกครองการเลื่อนที่ซ้อนกันทั้งหมดหยุดใช้ระยะทางการเลื่อนที่ซ้อนกัน หากปัจจุบันโค้ดของนักพัฒนาซอฟต์แวร์ลบล้างRecyclerView.onNestedScroll(View, int, int, int, int, int)โค้ดดังกล่าวอาจไม่ได้รับการเรียกใช้อีกต่อไป และควรลบล้างRecyclerView.onNestedScroll(View, int, int, int, int, int, int[])แทน
แก้ไขข้อบกพร่อง
- แก้ไขการขัดข้องเมื่อใช้
TransitionManagerเพื่อยุบ/ขยายรายการในRecyclerView(b/37129527) - แก้ไขข้อบกพร่องที่ทำให้ลักษณะการทำงานของ
RecyclerView.OnItemTouchListenerไม่สอดคล้องกับลักษณะการทำงานของonInterceptTouchEventและonTouchEventของระบบมุมมอง (aosp/721235) - แก้ไขข้อบกพร่องบางอย่างที่เกี่ยวข้องกับการเลื่อนอย่างราบรื่น (aosp/729718, aosp/747168, aosp/812576)
- แก้ไขกลยุทธ์การสแนปใน
PagerSnapHelperเพื่อจัดการกับการดูของเด็กที่ไม่ปกติ (aosp/795752)
androidx.recyclerview-selection 1.1.0-alpha01
แก้ไขข้อบกพร่อง
- แก้ไข
ConcurrentModificationExceptionเมื่อชุดข้อมูลเปลี่ยนแปลงโดยการนำการเลือกออก
RecyclerView-Selection เวอร์ชัน 1.1.0
RecyclerView-Selection เวอร์ชัน 1.1.0
27 มกราคม 2021
androidx.recyclerview:recyclerview-selection:1.1.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.0.0
- ปรับปรุงความเสถียรหลายอย่าง
- เลิกใช้งานเมธอด
withGestureTooltypesและwithPointerTooltypesในวันที่SelectionTracker.Builderเราจะนำวิธีการเหล่านี้ออกเมื่อเปิดตัวเวอร์ชันใหม่ในอนาคต
RecyclerView-Selection เวอร์ชัน 1.1.0-rc03
1 ตุลาคม 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-rc03 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
ขอขอบคุณ Stefan Kiesler ที่ทดสอบการแก้ไขและแสดงความคิดเห็น
- แก้ไขปัญหาที่ระบบเรียก OnClickListeners ของมุมมองย่อยโดยไม่คาดคิดในระหว่างการเลือกที่ใช้งานอยู่
- ตัวแฮนเดิลเมาส์ (การเลือกแถบ) > จัดการการเลื่อนที่ไม่คาดคิดอย่างราบรื่น (b/167821507)
RecyclerView-Selection เวอร์ชัน 1.1.0-rc02
2 กันยายน 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-rc02 มีคอมมิตเหล่านี้
ไฮไลต์
- แก้ไขการถดถอยหลายอย่างจากเวอร์ชัน 1.0 ในการจัดการอินพุต
- อัปเดตไลบรารีให้รองรับ
onRequestDisallowInterceptTouchEventเพื่อให้ทำงานร่วมกับ ItemTouchHelper ได้อย่างราบรื่น (เพียงปัดออก)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่คลังการเลือกตีความเหตุการณ์
GestureDetectorผิดพลาด ส่งผลให้การแตะหายไปในระหว่างการเลือกที่ใช้งานอยู่ (b/165030422) - แก้ไขปัญหาที่การเลือกไม่อัปเดตเพื่อแสดงรายการที่นำออกจากอแดปเตอร์ (b/138932671)
- แก้ไขปัญหาที่รายการ RecyclerView จะทริกเกอร์เหตุการณ์ onClick ขณะที่ SelectionTracker มีการเลือกที่ใช้งานอยู่ (b/161162268)
- ตอนนี้จัดการ
onRequestDisallowInterceptTouchEventได้อย่างถูกต้องแล้ว - แก้ไขปัญหาที่
”Cannot call this method in a scroll callback”ปรากฏขึ้นขณะเลื่อนเมาส์ใน Q - อัปเดตเอกสาร (โดยเฉพาะใน
StableIdKeyProvider) เพื่อระบุข้อกำหนดของอินสแตนซ์ RecyclerView อย่างชัดเจน
Recyclerview-Selection เวอร์ชัน 1.1.0-rc01
5 กุมภาพันธ์ 2020
androidx.recyclerview:recyclerview-selection:1.1.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-rc01 มีคอมมิตเหล่านี้
แก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ทำให้ RecyclerView เลื่อนได้ยากด้วยการเลือกท่าทางสัมผัสหากโต้ตอบกับ AppBarLayout ที่เลื่อนได้ (aosp/1193934)
RecyclerView-Selection เวอร์ชัน 1.1.0-beta01
4 ธันวาคม 2019
androidx.recyclerview:recyclerview-selection:1.1.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-beta01 มีคอมมิตเหล่านี้
ปรับปรุงความเสถียรทั่วไปที่เกี่ยวข้องกับการตรวจสอบเชิงรับและการจัดการสถานะภายใน
แก้ไขข้อบกพร่อง
- ปรับปรุงการจัดการสถานะของไลบรารีและการตีความเหตุการณ์ CANCEL ซึ่งส่งผลให้ความเสถียรดีขึ้น
การเปลี่ยนแปลง API
- เพิ่มพารามิเตอร์ประเภทคีย์การเลือกไปยังคลาสและเมธอดที่ขาดหายไป
- วิธีการที่เลิกใช้งานแล้ว
- SelectionTracker.Builder#withPointerTooltype
- SelectionTracker.Builder#withGestureTooltype
- วิธีการเหล่านี้มีขึ้นโดยมีเจตนาว่านักพัฒนาแอปอาจแมปพฤติกรรมของเคอร์เซอร์หรือท่าทางสัมผัสกับ ToolType อื่นๆ ที่ไม่ใช่ค่าเริ่มต้น* แม้ว่าเจตนาจะดี แต่เมื่อใช้ไปเรื่อยๆ ก็เห็นได้ชัดว่าความคาดหวังของผู้ใช้เกี่ยวกับลักษณะการป้อนข้อมูลนั้นเฉพาะเจาะจงตามประเภทเครื่องมือ นอกจากนี้ สไตลัส "พาสซีฟ" ยังเป็นเครื่องมือประเภทนิ้ว (FINGER tooltype) ในระบบอินพุตของ Android ด้วย
- ประเภทเครื่องมือเริ่มต้นคือ FINGER สำหรับท่าทางสัมผัส และ MOUSE สำหรับเคอร์เซอร์