Recyclerview
ตารางนี้จะแสดงรายการอาร์ติแฟกต์ทั้งหมดในกลุ่ม androidx.recyclerview
| อาร์ติแฟกต์ | รุ่นที่เสถียร | รุ่นที่อาจได้รับการเผยแพร่ | รุ่นเบต้า | เวอร์ชันอัลฟ่า |
|---|---|---|---|---|
| recyclerview | 1.4.0 | - | - | - |
| recyclerview-selection | 1.2.0 | - | - | - |
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มทรัพยากร Dependency ของ RecyclerView คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมในที่เก็บ Maven ของ Google
เพิ่มการอ้างอิงสำหรับอาร์ติแฟกต์ที่ต้องการในไฟล์ 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 (Android Gradle Plugin) เมื่ออัปเกรด คุณสามารถซ่อนคำเตือนเหล่านั้นได้
ฟีเจอร์ใหม่
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 (Android Gradle Plugin) เมื่ออัปเกรด คุณสามารถซ่อนคำเตือนเหล่านั้นได้
เวอร์ชัน 1.4.0-alpha02
7 สิงหาคม 2024
androidx.recyclerview:recyclerview:1.4.0-alpha02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0-alpha02 มีการคอมมิตเหล่านี้
หมายเหตุเกี่ยวกับความเข้ากันได้: เวอร์ชันนี้จะคอมไพล์กับ SDK ของ API 35 (Vanilla Ice Cream) ขึ้นไปเท่านั้น หากเห็นคำเตือน AGP (Android Gradle Plugin) เมื่ออัปเกรด คุณสามารถซ่อนคำเตือนเหล่านั้นได้
ฟีเจอร์ใหม่
- การรองรับอัตราการรีเฟรชที่เปลี่ยนแปลงได้: ตอนนี้ 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
- นำคำอธิบายประกอบเกี่ยวกับ Nullability ที่เพิ่มใน 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
- เพิ่มการกำกับเนื้อหาเกี่ยวกับ Nullability สำหรับเมธอดและพารามิเตอร์จำนวนหนึ่งเพื่อปรับปรุงคำเตือนของ Lint สำหรับผู้ใช้ Java และความสามารถในการทำงานร่วมกันสำหรับผู้ใช้ Kotlin การเปลี่ยนแปลงนี้อาจทำให้แหล่งที่มาของผู้ใช้ Kotlin บางรายใช้งานไม่ได้ และส่งผลให้ผู้ใช้ Java บางรายได้รับคำเตือน/ข้อผิดพลาดจาก Lint เพิ่มเติม (I61829, b/236487044; Ia0b6f; I6f119, b/236487209; Ibe1de, b/236487210)
การแก้ไขข้อบกพร่อง
- ตรวจสอบว่าบริการ a11y ถือว่าตารางกริดเป็นตารางกริดโดยการตั้งชื่อคลาสข้อมูลโหนด a11y (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.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)
การแก้ไขข้อบกพร่อง
- ตอนนี้ไลบรารีนี้ใช้แอตทริบิวต์ JSpecify nullness ซึ่งเป็นการใช้ประเภท นักพัฒนาซอฟต์แวร์ 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จะแสดงตำแหน่งอะแดปเตอร์ที่ถูกต้องเมื่อมีการค้นหาในonViewRecycledcallback (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 สามารถเลื่อนเวลาการกู้คืนสถานะจนกว่าระบบจะโหลดเนื้อหา ดูรายละเอียดเพิ่มเติมในเอกสารประกอบ
เวอร์ชัน 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 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มการรองรับการเพิ่ม RecyclerListeners หลายรายการ (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 มีเพียงรายการเดียวและโฟกัสอยู่ การโฟกัสไปข้างหน้าหรือข้างหลังจะไม่ย้ายโฟกัส (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ซึ่งช่วยให้อะแดปเตอร์ควบคุมได้ว่าควรคืนค่าสถานะเลย์เอาต์เมื่อใดเช่น คุณสามารถโทรหา
myAdapter.setStateRestorationStrategy(StateRestorationStrategy.WHEN_NOT_EMPTY);เพื่อทําให้ RecyclerView รอจนกว่า Adapter จะไม่ว่างเปล่าก่อนที่จะกู้คืนตําแหน่งการเลื่อน
ระบบจะไม่ป้อนข้อมูล CollectionInfo และ CollectionItemInfo โดยค่าเริ่มต้นอีกต่อไป
หากต้องการให้บริการการช่วยเหลือพิเศษ (เช่น Talkback) ระบุจำนวนและดัชนีรายการต่อผู้ใช้ต่อไป คุณจะต้องป้อนข้อมูล CollectionInfo และ CollectionItemInfo ด้วยตนเอง
ระบบจะไม่สร้างออบเจ็กต์เหล่านี้ในเฟรมเวิร์กอีกต่อไปเนื่องจากเฟรมเวิร์กไม่สามารถระบุจํานวนรายการที่ผู้ใช้รับรู้ (เช่น ตัวคั่น ส่วนหัว หรือรายการ RecyclerView ที่แสดงรายการที่ผู้ใช้รับรู้หลายรายการ)
การแก้ไขข้อบกพร่อง
- ตอนนี้ RecyclerView จะไม่ยึดตามมุมมองที่อยู่นอกวิวพอร์ตเมื่อขนาดวิวพอร์ตมีการเปลี่ยนแปลง
- แก้ไขข้อบกพร่องใน DiffUtil ที่อาจคํานวณความแตกต่างไม่ถูกต้องเมื่อรายการเดิมในรายการแรกซ้ำกันหลายครั้งในรายการที่ 2 (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)อีกต่อไปและควรลบล้างRecyclerView.onNestedScroll(View, int, int, int, int, int, int[])แทน - ตอนนี้ RecyclerView มีแอตทริบิวต์สไตล์เริ่มต้นแล้ว ซึ่งก็คือ
recyclerViewStyleซึ่งช่วยให้คุณตั้งค่าสไตล์เริ่มต้นในธีมได้ - API การดําเนินการด้านการช่วยเหลือพิเศษของ ViewCompat ไม่ทําให้ ItemDelegate ของ RecyclerView ใช้งานไม่ได้อีกต่อไป
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 ไม่ทํางาน
- แก้ไขปัญหาที่ไม่ได้ใช้ ItemDelegates ที่กําหนดเอง
เวอร์ชัน 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)
แก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องร้ายแรงเกี่ยวกับสแต็กที่ล้นซึ่งเกี่ยวข้องกับ 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 เพื่อดึงข้อมูล
DividerItemDecorationdrawable (aosp/937282) - เลิกใช้งาน
LinearLayout.getExtraLayoutSpace(RecyclerVew.State)และใช้กลไกใหม่ที่อนุญาตให้มีพื้นที่เลย์เอาต์เพิ่มเติมที่กำหนดเองได้ทั้งสองด้าน วิธีการใหม่คือLinearLayout.calculateExtraLayoutSpace(RecyclerView.state, int[])(aosp/931259)
แก้ไขข้อบกพร่อง
- ปรับปรุงการเลือกท่าทางสัมผัส (aosp/940781)
- รักษาลําดับการเลือก (ตามเวลาสร้าง) (b/128455535)
เวอร์ชัน 1.1.0-alpha04
3 เมษายน 2019
androidx.recyclerview:recyclerview:1.1.0-alpha04 ได้รับการปล่อยแล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
แก้ไขข้อบกพร่อง
- ก่อนหน้านี้ OnItemTouchListener ของ RV ไม่สามารถขัดจังหวะ 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)โดยส่งค่า true - ดูข้อมูลเพิ่มเติมในเอกสารประกอบของ
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)อีกต่อไปและควรลบล้าง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 ที่ทดสอบการแก้ไขและแสดงความคิดเห็น
- แก้ไขปัญหาที่ระบบเรียก OnClickListener ของมุมมองย่อยโดยไม่คาดหมายระหว่างการเลือกที่ใช้งานอยู่
- ตัวแฮนเดิลของเมาส์ (band-selection) > จัดการการเลื่อนที่ไม่คาดคิดอย่างราบรื่น (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 มีการคอมมิตเหล่านี้
การปรับปรุงความเสถียรทั่วไปที่เกี่ยวข้องกับการตรวจสอบการป้องกันและการจัดการสถานะภายใน
แก้ไขข้อบกพร่อง
- ปรับปรุงการจัดการสถานะคลังและการตีความเหตุการณ์ "ยกเลิก" ซึ่งส่งผลให้ความเสถียรดีขึ้น
การเปลี่ยนแปลง API
- เพิ่มพารามิเตอร์ประเภทคีย์การเลือกลงในคลาสและเมธอดที่ขาดหายไป
- เมธอดที่เลิกใช้งานแล้ว
- SelectionTracker.Builder#withPointerTooltype
- SelectionTracker.Builder#withGestureTooltype
- วิธีการเหล่านี้มีไว้เพื่อให้นักพัฒนาแอปจับคู่ลักษณะการทำงานของเคอร์เซอร์หรือท่าทางสัมผัสกับประเภทเครื่องมืออื่นที่ไม่ใช่ค่าเริ่มต้น* เจตนานั้นดี แต่หลังจากใช้งานเพิ่มเติมก็เห็นได้ชัดว่าความคาดหวังของผู้ใช้เกี่ยวกับลักษณะของอินพุตนั้นเฉพาะเจาะจงกับเครื่องมือแต่ละประเภท นอกจากนี้ สไตลัส "แบบไม่ใช้พลังงาน" ยังเป็นเครื่องมือประเภทนิ้วสำหรับระบบอินพุตของ Android
- ประเภทเครื่องมือเริ่มต้นคือนิ้วสำหรับท่าทางสัมผัส และเมาส์สำหรับเคอร์เซอร์