ค่ากำหนด
| อัปเดตล่าสุด | รุ่นที่เสถียร | รุ่นที่อาจได้รับการเผยแพร่ | รุ่นเบต้า | รุ่นอัลฟ่า |
|---|---|---|---|---|
| 26 กรกฎาคม 2023 | 1.2.1 | - | - | - |
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มทรัพยากร Dependency ในค่ากำหนด คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมได้ที่ที่เก็บ Maven ของ Google
เพิ่มทรัพยากร Dependency สำหรับอาร์ติแฟกต์ที่คุณต้องการในไฟล์ build.gradle ของแอปหรือโมดูล
ดึงดูด
dependencies { def preference_version = "1.2.1" // Java language implementation implementation "androidx.preference:preference:$preference_version" // Kotlin implementation "androidx.preference:preference-ktx:$preference_version" }
Kotlin
dependencies { val preference_version = "1.2.1" // Java language implementation implementation("androidx.preference:preference:$preference_version") // Kotlin implementation("androidx.preference:preference-ktx:$preference_version") }
ดูข้อมูลเพิ่มเติมเกี่ยวกับทรัพยากร Dependency ได้ที่หัวข้อเพิ่มทรัพยากร Dependency ในการสร้าง
ความคิดเห็น
ความคิดเห็นของคุณช่วยเราปรับปรุง Jetpack ให้ดียิ่งขึ้น โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมีไอเดียในการปรับปรุงไลบรารีนี้ โปรดดู ปัญหาที่มีอยู่แล้ว ในไลบรารีนี้ก่อนสร้างปัญหาใหม่ คุณสามารถโหวตปัญหาที่มีอยู่แล้วได้โดยคลิกปุ่มรูปดาว
ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของIssue Tracker
เวอร์ชัน 1.2
เวอร์ชัน 1.2.1
26 กรกฎาคม 2023
เปิดตัว androidx.preference:preference:1.2.1 แล้ว เวอร์ชัน 1.2.1 มีการคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- ตอนนี้
PreferenceHeaderFragmentCompatจัดการปุ่มย้อนกลับของระบบได้อย่างถูกต้องเมื่อใช้ภายในComponentDialogหรือเมื่อใช้ไลบรารี เช่น@AndroidEntryPointของ Hilt ที่ห่อหุ้มContextของ Fragment - ตอนนี้ค่ากำหนดขึ้นอยู่กับ Activity 1.5.1 แล้ว (Ie5d22)
PreferenceHeaderFragmentCompat.onCreateInitialDetailFragmentตอนนี้จะเผยแพร่header.extrasเป็นอาร์กิวเมนต์Fragment
เวอร์ชัน 1.2.0
26 มกราคม 2022
เปิดตัว androidx.preference:preference:1.2.0 และ androidx.preference:preference-ktx:1.2.0 แล้ว เวอร์ชัน 1.2.0 มีการคอมมิตต่อไปนี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0
- เพิ่ม
PreferenceHeaderFragmentCompatสำหรับค่ากำหนด 2 บานหน้าต่างที่ปรับให้เข้ากับขนาดของอุปกรณ์ที่ใช้โดยอัตโนมัติ จึงเหมาะสำหรับการใช้งานในโทรศัพท์ โทรศัพท์แบบพับได้ และแท็บเล็ต บานหน้าต่างส่วนหัวจะแสดงโดยการลบล้างเมธอดonCreatePreferenceHeader()ในPreferenceHeaderFragmentCompat<Preference>ใดๆ ในPreferenceFragmentCompatส่วนหัวที่ใช้app:fragmentจะทำให้ Fragment นั้นปรากฏในบานหน้าต่างรายละเอียดที่ 2 คุณสามารถปรับแต่ง Fragment รายละเอียดเริ่มต้นที่ควรแสดงก่อนที่จะเลือกค่ากำหนดด้วยตนเองได้โดยการลบล้างonCreateInitialDetailFragment()การใช้งานเริ่มต้นจะแสดงค่ากำหนดแรกที่มีการกำหนด Fragment ไว้
class TwoPanePreference : PreferenceHeaderFragmentCompat() {
override fun onCreatePreferenceHeader(): PreferenceFragmentCompat {
return PreferenceHeader()
}
}
เพิ่มคำอธิบายประกอบเกี่ยวกับความสามารถในการเว้นว่างให้กับ API หลายรายการที่ก่อนหน้านี้ไม่ได้ระบุ
@NonNullหรือ@Nullableการเปลี่ยนแปลงนี้อาจทำให้โค้ด Kotlin เสียหายได้หากค่า Null ที่คุณเลือกไว้ในโค้ด Kotlin ไม่ตรงกับค่า Null ที่กำหนดไว้ในตอนนี้ตอนนี้
PreferenceFragmentCompatจะค้นหาการใช้งานอินเทอร์เฟซOnPreferenceStartFragmentCallback,OnNavigateToScreenListenerและOnDisplayPreferenceDialogListenerใน Fragment หลักก่อนที่จะดูว่า Context หรือ Activity ที่โฮสต์มีการใช้งานอินเทอร์เฟซเหล่านี้หรือไม่
เวอร์ชัน 1.2.0-rc01
15 ธันวาคม 2021
เปิดตัว androidx.preference:preference:1.2.0-rc01 และ androidx.preference:preference-ktx:1.2.0-rc01 โดยไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่ 1.2.0-beta01 เวอร์ชัน 1.2.0-rc01 มีการคอมมิตต่อไปนี้
เวอร์ชัน 1.2.0-beta01
17 พฤศจิกายน 2021
เปิดตัว androidx.preference:preference:1.2.0-beta01 และ androidx.preference:preference-ktx:1.2.0-beta01 โดยไม่มีการเปลี่ยนแปลงใดๆ จากค่ากำหนด 1.2.0-alpha02 เวอร์ชัน 1.2.0-beta01 มีการคอมมิตต่อไปนี้
เวอร์ชัน 1.2.0-alpha02
3 พฤศจิกายน 2021
เปิดตัว androidx.preference:preference:1.2.0-alpha02 และ androidx.preference:preference-ktx:1.2.0-alpha02 แล้ว เวอร์ชัน 1.2.0-alpha02 มีการคอมมิตต่อไปนี้
การเปลี่ยนแปลงของ API
- เพิ่มคำอธิบายประกอบเกี่ยวกับความสามารถในการเว้นว่างให้กับ API หลายรายการที่ก่อนหน้านี้ไม่ได้ระบุ
@NonNullหรือ@Nullable(I04252, Ie2cc0) - นำ API
openPreference()ออกจากPreferenceHeaderFragmentCompat- ระบบจะเรียกเมธอดนี้ให้คุณและคุณไม่ควรเรียกด้วยตนเอง (Ia6989)
การเปลี่ยนแปลงพฤติกรรม
- ตอนนี้การเรียกกลับของ PreferenceFragmentCompat สำหรับ
OnNavigateToScreenListenerและOnDisplayPreferenceDialogListenerเป็นไปตามรูปแบบเดียวกับOnPreferenceTreeClickListenerและค้นหาลำดับชั้นของ Fragment หลักเพื่อหา Listener ที่ถูกต้องก่อนที่จะดูว่า Context หรือ Activity ที่โฮสต์มีการใช้งานอินเทอร์เฟซเหล่านี้หรือไม่ (I7ae6c)
เวอร์ชัน 1.2.0-alpha01
27 ตุลาคม 2021
เปิดตัว androidx.preference:preference:1.2.0-alpha01 และ androidx.preference:preference-ktx:1.2.0-alpha01 แล้ว เวอร์ชัน 1.2.0-alpha01 มีการคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เพิ่ม
PreferenceHeaderFragmentCompatสำหรับค่ากำหนด 2 บานหน้าต่าง (I9a2d8)
การเปลี่ยนแปลงพฤติกรรม
ตอนนี้การเรียกกลับของค่ากำหนดสำหรับ OnPreferenceDisplayDialogCallback, OnPreferenceStartScreenCallback และ OnPreferenceStartFragmentCallback สามารถใช้งานได้ใน Context ที่ไม่ใช่ Activity ระบบจะตรวจสอบ getContext() เพื่อดูว่ามีการใช้งานการเรียกกลับเหล่านี้หรือไม่ก่อนที่จะตรวจสอบ getActivity() หาก getContext() แสดงผล Activity (กรณีทั่วไป) ก็จะไม่มีการเปลี่ยนแปลงลักษณะการทำงาน
ตอนนี้การเรียก
onPreferenceTreeClickของPreferenceFragmentCompatจะค้นหาการใช้งานอินเทอร์เฟซOnPreferenceStartFragmentCallbackใน Fragment หลักก่อนที่จะพิจารณาการใช้งานของ Activity (c64eed)
เวอร์ชัน 1.1
เวอร์ชัน 1.1.1
15 เมษายน 2020
เปิดตัว androidx.preference:preference:1.1.1 และ androidx.preference:preference-ktx:1.1.1 แล้ว เวอร์ชัน 1.1.1 มีการคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
PreferenceDialogFragmentCompatจะไม่แสดงIllegalStateExceptionอีกต่อไปเมื่อขยายFragmentContainerViewจาก XML (b/150051716)
การอัปเดตทรัพยากร Dependency
- ตอนนี้ค่ากำหนดขึ้นอยู่กับ Fragment
1.2.4แล้ว (aosp/1277317) - ตอนนี้ทรัพยากร Dependency
preference-ktxขึ้นอยู่กับandroidx.core:core-ktx:1.1.0และandroidx.fragment:fragment-ktx:1.2.4ซึ่งสะท้อนถึงทรัพยากร Dependency ของอาร์ติแฟกต์preferenceหลักและช่วยให้การอัปเกรดpreference-ktxอัปเดตทั้งอาร์ติแฟกต์หลักและอาร์ติแฟกต์-ktxของทรัพยากร Dependency แบบชั่วคราว (aosp/1277319)
เวอร์ชัน 1.1.0
5 กันยายน 2019
เปิดตัว androidx.preference:preference:1.1.0 และ androidx.preference:preference-ktx:1.1.0 แล้ว ดูการคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
หากนี่เป็นการเปิดตัว 1.1.* ครั้งแรกที่คุณอัปเดต นี่คือรายการการเปลี่ยนแปลงที่สำคัญตั้งแต่การเปิดตัวเวอร์ชันเสถียรล่าสุด 1.0.0 นอกจากนี้ คุณอาจพบว่าคู่มือการตั้งค่า, แอปตัวอย่าง และการพูดคุยใน Android Dev Summit มีประโยชน์
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.0.0
- เราได้เลิกใช้งาน
PreferenceFragmentและคลาสอื่นๆ ที่ใช้ Fragment ของเฟรมเวิร์กแล้ว คุณควรใช้PreferenceFragmentCompatและคลาส *compat อื่นๆ แทน - ตอนนี้คุณสามารถตั้งค่า
SummaryProviderในค่ากำหนดเพื่อกำหนดค่าสรุปแบบไดนามิกทุกครั้งที่ค่ากำหนดได้รับการอัปเดตหรือผู้ใช้มองเห็น ดูข้อมูลเพิ่มเติมได้ในคู่มือ - เพิ่มอินเทอร์เฟซ
EditTextPreference.OnBindEditTextListenerซึ่งช่วยให้ปรับแต่งEditTextที่แสดงในกล่องโต้ตอบที่เกี่ยวข้องได้หลังจากที่กล่องโต้ตอบได้รับการผูกแล้ว นี่เป็นการแทนที่โดยตรงสำหรับการใช้แอตทริบิวต์ เช่นandroid:inputTypeในEditTextPreferenceโดยตรง ซึ่งไลบรารี AndroidX ไม่รองรับ ดูข้อมูลเพิ่มเติมได้ในคู่มือ - เพิ่ม
Preference.setCopyingEnabled()เมื่อตั้งค่าแล้ว การกดค่ากำหนดค้างไว้จะแสดงเมนูตามบริบทที่อนุญาตให้คัดลอกสรุปของค่ากำหนด - อัปเดตการจัดรูปแบบ
SeekBarPreferenceให้ตรงตามข้อกำหนดเฉพาะของ Material ดูบันทึกการเปลี่ยนแปลงโดยละเอียดสำหรับการเปลี่ยนแปลงอื่นๆ ในSeekBarPreference - แก้ไขข้อบกพร่องจำนวนมาก อัปเดตสไตล์ แก้ไขความเข้ากันได้ของระดับ API และปรับปรุง QOL ทั่วไป
เวอร์ชัน 1.1.0-rc01
2 กรกฎาคม 2019
เปิดตัว androidx.preference:preference:1.1.0-rc01 และ androidx.preference:preference-ktx:1.1.0-rc01 แล้ว ดูการคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
การเปลี่ยนแปลงของ API
- เลิกใช้งาน
Preference#onInitializeAccessibilityNodeInfo - เมธอดนี้ทำหน้าที่เป็นพร็อกซีข้อมูลโหนดการช่วยเหลือพิเศษสำหรับค่ากำหนดที่เฉพาะเจาะจง แต่เลเยอร์นี้ไม่เหมาะสำหรับการปรับแต่งนี้ หากต้องการปรับข้อมูลการช่วยเหลือพิเศษ คุณควรลบล้าง onBindViewHolder และเพิ่มข้อมูลการช่วยเหลือพิเศษลงในมุมมองโดยตรงแทน
เวอร์ชัน 1.1.0-beta01
5 มิถุนายน 2019
เปิดตัว androidx.preference:preference:1.1.0-beta01 และ androidx.preference:preference-ktx:1.1.0-beta01 แล้ว ดูการคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0
หากนี่เป็นการเปิดตัว 1.1.* ครั้งแรกที่คุณอัปเดต นี่คือรายการการเปลี่ยนแปลงที่สำคัญตั้งแต่การเปิดตัวเวอร์ชันเสถียรล่าสุด 1.1.0 นอกจากนี้ คุณอาจพบว่าคู่มือการตั้งค่า, แอปตัวอย่าง และการพูดคุยใน Android Dev Summit มีประโยชน์
- เราได้เลิกใช้งาน PreferenceFragment และคลาสอื่นๆ ที่ใช้ Fragment ของเฟรมเวิร์กแล้ว คุณควรใช้ PreferenceFragmentCompat และคลาส *compat อื่นๆ แทน
- ตอนนี้คุณสามารถตั้งค่า SummaryProvider ในค่ากำหนดเพื่อกำหนดค่าสรุปแบบไดนามิกทุกครั้งที่ค่ากำหนดได้รับการอัปเดตหรือผู้ใช้มองเห็น ดูข้อมูลเพิ่มเติมได้ในคู่มือ
- เพิ่มอินเทอร์เฟซ
EditTextPreference.OnBindEditTextListenerซึ่งช่วยให้ปรับแต่ง EditText ที่แสดงในกล่องโต้ตอบที่เกี่ยวข้องได้หลังจากที่กล่องโต้ตอบได้รับการผูกแล้ว นี่เป็นการแทนที่โดยตรงสำหรับการใช้แอตทริบิวต์ เช่น android:inputType ใน EditTextPreference โดยตรง ซึ่งไลบรารี AndroidX ไม่รองรับ ดูข้อมูลเพิ่มเติมได้ในคู่มือ - เพิ่ม
Preference.setCopyingEnabled()เมื่อตั้งค่าแล้ว การกดค่ากำหนดค้างไว้จะแสดงเมนูตามบริบทที่อนุญาตให้คัดลอกสรุปของค่ากำหนด - อัปเดตการจัดรูปแบบ SeekBarPreference ให้ตรงตามข้อกำหนดเฉพาะของ Material ดูบันทึกการเปลี่ยนแปลงโดยละเอียดสำหรับการเปลี่ยนแปลงอื่นๆ ใน SeekBarPreference
- แก้ไขข้อบกพร่องจำนวนมาก อัปเดตสไตล์ แก้ไขความเข้ากันได้ของระดับ API และปรับปรุง QOL ทั่วไป
การเปลี่ยนแปลงของ API ตั้งแต่เวอร์ชัน 1.1.0-alpha05
- นำ getOnBindEditTextListener ออกจาก API สาธารณะ คุณควรใช้ setOnBindEditTextListener เท่านั้นเมื่อโต้ตอบกับ API นี้
โปรดรายงานข้อบกพร่อง ที่นี่ หากพบปัญหาหรือมีคำแนะนำสำหรับฟีเจอร์ใหม่
เวอร์ชัน 1.1.0-alpha05
7 พฤษภาคม 2019
เปิดตัว androidx.preference:preference:1.1.0-alpha05 และ androidx.preference:preference-ktx:1.1.0-alpha05 แล้ว ดูการคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
ฟีเจอร์ใหม่
- อัปเดตการจัดรูปแบบสำหรับค่ากำหนดที่เลือกไม่ได้ โดยตอนนี้ชื่อและสรุปจะใช้สีเดียวกันเพื่อให้เห็นชัดเจนว่าโต้ตอบไม่ได้และใช้เพื่อแสดงข้อมูลเท่านั้น
- หมายเหตุ: คุณอาจต้องการเพิ่ม
enableCopying="true"ลงในค่ากำหนดที่เลือกไม่ได้เพื่อให้กดค้างไว้เพื่อคัดลอกสรุปได้
การแก้ไขข้อบกพร่อง
- แก้ไขการเกิดปัญหาซ้ำที่ทำให้ PreferenceCategory และค่ากำหนดอื่นๆ ที่เลือกไม่ได้มีเอฟเฟกต์ระลอกเมื่อเลือก
- แก้ไขปัญหาการช่วยเหลือพิเศษที่ TalkBack ไม่เห็น DropDownPreference ว่าคลิกได้
- แก้ไขปัญหาเลย์เอาต์ RTL บางรายการ
- อัปเดตคำอธิบายประกอบเกี่ยวกับค่า Null บางรายการใน PreferenceFragmentCompat ให้ตรงกับ Fragment
เวอร์ชัน 1.1.0-alpha04
13 มีนาคม 2019
เปิดตัว androidx.preference:preference:1.1.0-alpha04 และ androidx.preference:preference-ktx:1.1.0-alpha04 แล้ว ดูรายการคอมมิตทั้งหมดที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่
ฟีเจอร์ใหม่
การอัปเดต SeekBarPreference
- อัปเดตการจัดรูปแบบให้ตรงตามข้อกำหนดเฉพาะของ Material
- ตอนนี้ป้ายกำกับค่าจะซ่อนอยู่โดยค่าเริ่มต้น แต่ยังคงแสดงได้ด้วย
app:showSeekBarValue="true"หรือsetShowSeekBarValue(true)ป้ายกำกับนี้ไม่ได้เป็นส่วนหนึ่งของข้อกำหนดเฉพาะของ Material แต่เราเข้าใจว่ามีการใช้งานอย่างแพร่หลาย ดังนั้นเราจะยังคงรองรับต่อไปแม้ว่าจะไม่แนะนำให้ใช้ก็ตาม - ตอนนี้ป้ายกำกับค่าจะอัปเดตขณะที่ลาก SeekBar แทนที่จะอัปเดตเมื่อปล่อย โปรดทราบว่าการดำเนินการนี้ไม่ได้หมายความว่าค่าภายในจะได้รับการอัปเดต โปรดดู API ใหม่ด้านล่างที่เปิดใช้ฟังก์ชันการทำงานดังกล่าว
- หมายเหตุ: แม้ว่าระบบจะรองรับ แต่คุณควรหลีกเลี่ยงการตั้งค่าสรุปใน SeekBarPreference เนื่องจากไม่ได้มีไว้เพื่อการใช้งานดังกล่าวและไม่ได้เป็นส่วนหนึ่งของข้อกำหนดเฉพาะของ Material
- ตอนนี้ป้ายกำกับค่าจะซ่อนอยู่โดยค่าเริ่มต้น แต่ยังคงแสดงได้ด้วย
- เพิ่มการรองรับการอัปเดตอย่างต่อเนื่อง ซึ่งช่วยให้ SeekBar อัปเดตค่าที่บันทึกไว้ขณะที่ลาก SeekBar คุณเปิดใช้ฟีเจอร์นี้ได้จาก XML หรือแบบเป็นโปรแกรมด้วย
app:updatesContinuously="true"หรือsetUpdatesContinuously(true)ระบบจะทริกเกอร์ฟีเจอร์นี้ทุกครั้งที่ตำแหน่งของ SeekBar บนหน้าจอเปลี่ยนแปลง
การเปลี่ยนแปลงของ API
- เพิ่มคำอธิบายประกอบเกี่ยวกับความสามารถในการเว้นว่างที่ขาดหายไปลงใน
findPreference()
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ Listener ของเมนูตามบริบทไม่ถูกนำออกอย่างถูกต้องหากไม่ได้เปิดใช้การคัดลอก
เวอร์ชัน 1.1.0-alpha03
7 กุมภาพันธ์ 2019
androidx.preference:preference 1.1.0-alpha03
เปิดตัว androidx.preference:preference 1.1.0-alpha03 และ androidx.preference:preference-ktx 1.1.0-alpha03 พร้อมการเปลี่ยนแปลงต่อไปนี้
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ป๊อปอัปคัดลอก/วางไม่แสดงในกล่องโต้ตอบของ EditTextPreference ในบางครั้ง
- แก้ไขปัญหาที่ไม่ได้ยกเลิกการลงทะเบียนอะแดปเตอร์พื้นฐานอย่างถูกต้อง ซึ่งทำให้เกิดการรั่วไหลของหน่วยความจำภายใต้เงื่อนไขที่เฉพาะเจาะจง (b/121006469)
- แก้ไขข้อขัดข้องที่เกี่ยวข้องกับกล่องโต้ตอบบางรายการที่เกิดขึ้นระหว่างการเปลี่ยนแปลงการกำหนดค่า (b/122167543)
- แก้ไขปัญหาที่ SummaryProvider ไม่ทำงานสำหรับ MultiSelectListPreference (b/123022772)
เวอร์ชัน 1.1.0-alpha02
17 ธันวาคม 2018
โปรดดู คู่มือการตั้งค่าและแอปตัวอย่าง ที่เพิ่งอัปเดตด้วย
ฟีเจอร์ใหม่
เพิ่มอินเทอร์เฟซ
EditTextPreference.OnBindEditTextListenerซึ่งช่วยให้ปรับแต่ง EditText ที่แสดงในกล่องโต้ตอบที่เกี่ยวข้องได้หลังจากที่กล่องโต้ตอบได้รับการผูกแล้ว เช่น การตั้งค่าประเภท / ความยาวอินพุตที่กำหนดเองหรือการเพิ่ม TextWatcherเพิ่ม
Preference.setCopyingEnabled()เมื่อตั้งค่าแล้ว การกดค่ากำหนดค้างไว้จะแสดงเมนูตามบริบทที่อนุญาตให้คัดลอกสรุปของค่ากำหนด คุณสามารถใช้ฟีเจอร์นี้เพื่ออนุญาตให้คัดลอกข้อมูลแบบคงที่ เช่น รหัสเฉพาะของผู้ใช้ / ข้อมูลเวอร์ชันของแอปพลิเคชันตอนนี้ preferenceTheme จะใช้กับธีมของ Activity ซึ่งหมายความว่าเมื่อสร้างค่ากำหนดจากโค้ด คุณไม่จำเป็นต้องใช้ Context จาก
PreferenceManager#getContext()อีกต่อไป แต่สามารถใช้ Context ของ Fragment/Activity ได้เลย
การเปลี่ยนแปลงของ API
- ปรับโครงสร้าง
findPreference()เพื่อแสดงผล<T extends Preference>ซึ่งหมายความว่าคุณไม่จำเป็นต้องแคสต์ค่ากำหนดอย่างชัดเจนเมื่อใช้ findPreference() เช่นEditTextPreference preference = findPreference(“edit_text”)เป็นโค้ดที่ถูกต้องแล้ว
เวอร์ชัน 1.1.0-alpha01
5 พฤศจิกายน 2018
ฟีเจอร์ใหม่
- ตอนนี้คุณสามารถตั้งค่า SummaryProvider ในค่ากำหนดเพื่อกำหนดค่าสรุปแบบไดนามิกทุกครั้งที่ค่ากำหนดได้รับการอัปเดตหรือผู้ใช้มองเห็น
- เพิ่มการใช้งาน SummaryProvider เริ่มต้นสำหรับ ListPreference และ EditTextPreference ซึ่งเมื่อตั้งค่าแล้วจะอัปเดตสรุปของ ค่ากำหนดโดยอัตโนมัติเพื่อให้แสดงค่าที่บันทึกไว้ หรือ "ไม่ได้ตั้งค่า" หากไม่มีการบันทึกค่า คุณตั้งค่าเหล่านี้ได้ด้วย app:useSimpleSummaryProvider="true"
- เพิ่ม PreferenceGroup#removePreferenceRecursively ซึ่งจะค้นหาและนำค่ากำหนดออกจากกลุ่มหรือกลุ่มที่ซ้อนกันในลำดับชั้นแบบเรียกซ้ำ
การเปลี่ยนแปลงของ API
- เราได้เลิกใช้งาน PreferenceFragment และคลาสอื่นๆ ที่ใช้ Fragment ของเฟรมเวิร์กแล้ว คุณควรใช้ PreferenceFragmentCompat และคลาส compat อื่นๆ แทน
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ iconSpaceReserved ทำงานไม่ถูกต้องกับ PreferenceCategory
- แก้ไขปัญหาที่ PreferenceCategory ไม่ใช้ colorAccent สำหรับสีของชื่อใต้ API 21
- แก้ไขความไม่สอดคล้องของเลย์เอาต์ SeekBarPreference บางรายการใต้ API 21