Appcompat

อนุญาตให้เข้าถึง API ใหม่ใน API เวอร์ชันเก่าของแพลตฟอร์ม (หลายเวอร์ชันใช้ Material Design)
อัปเดตล่าสุด รุ่นที่เสถียร รุ่นที่อาจได้รับการเผยแพร่ รุ่นเบต้า เวอร์ชันอัลฟ่า
29 พฤษภาคม 2024 1.7.0 - - -

การประกาศทรัพยากร Dependency

หากต้องการเพิ่มการพึ่งพา Appcompat คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมในที่เก็บ Maven ของ Google

เพิ่มการอ้างอิงสำหรับอาร์ติแฟกต์ที่คุณต้องการในไฟล์ build.gradle สำหรับแอปหรือโมดูล

ดึงดูด

dependencies {
    def appcompat_version = "1.7.0"

    implementation "androidx.appcompat:appcompat:$appcompat_version"
    // For loading and tinting drawables on older versions of the platform
    implementation "androidx.appcompat:appcompat-resources:$appcompat_version"
}

Kotlin

dependencies {
    val appcompat_version = "1.7.0"

    implementation("androidx.appcompat:appcompat:$appcompat_version")
    // For loading and tinting drawables on older versions of the platform
    implementation("androidx.appcompat:appcompat-resources:$appcompat_version")
}

ดูข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาได้ที่เพิ่มการพึ่งพาบิลด์

ความคิดเห็น

ความคิดเห็นของคุณช่วยปรับปรุง Jetpack ได้ โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมีแนวคิดในการปรับปรุงคลังนี้ โปรดดูปัญหาที่มีอยู่ในคลังนี้ก่อนสร้างปัญหาใหม่ คุณสามารถเพิ่มการโหวตให้กับปัญหาที่มีอยู่ได้โดยคลิกปุ่มดาว

สร้างปัญหาใหม่

ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของเครื่องมือติดตามปัญหา

เวอร์ชัน 1.7

เวอร์ชัน 1.7.0

29 พฤษภาคม 2024

androidx.appcompat:appcompat:1.7.0 และ androidx.appcompat:appcompat-resources:1.7.0 เผยแพร่แล้ว เวอร์ชัน 1.7.0 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.6.0

  • ตอนนี้ AppCompatDialog จะตั้งค่า LifecycleOwner, SavedStateRegistryOwner และ OnBackPressedDispatcherOwner ในมุมมองการตกแต่งของกล่องโต้ตอบผ่าน ViewTree API อย่างถูกต้องแล้ว ซึ่งจะแก้ไขปัญหาเมื่อโฮสต์ ComposeView ภายใน AppCompatDialog
  • ตอนนี้ AppCompatActivity จะตั้งค่า ViewTreeOnBackPressedDispatcherOwner เพื่อให้ดึงข้อมูลตัวจัดสรรจากมุมมองได้
  • ปรับปรุงประสิทธิภาพของ SupportMenuInflater ให้ดียิ่งขึ้นอย่างมาก
  • ตอนนี้ Locale.getDefault() จะแสดงผลภาษาของระบบหลังจากการเริ่มต้นแบบ Cold Start
  • ตอนนี้ LinearLayoutCompat จะเก็บพารามิเตอร์เลย์เอาต์ระยะขอบไว้

การอัปเดตทรัพยากร Dependency

  • ตอนนี้ AppCompat ต้องใช้ Activity 1.7.0
  • ตอนนี้ AppCompat ต้องใช้ Fragment เวอร์ชัน 1.5.4

เวอร์ชัน 1.7.0-rc01

14 พฤษภาคม 2024

androidx.appcompat:appcompat:1.7.0-rc01 และ androidx.appcompat:appcompat-resources:1.7.0-rc01 เผยแพร่แล้ว เวอร์ชัน 1.7.0-rc01 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.7.0-beta01

1 พฤษภาคม 2024

androidx.appcompat:appcompat:1.7.0-beta01 และ androidx.appcompat:appcompat-resources:1.7.0-beta01 เผยแพร่แล้ว เวอร์ชัน 1.7.0-beta01 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.7.0-alpha03

26 กรกฎาคม 2023

androidx.appcompat:appcompat:1.7.0-alpha03 และ androidx.appcompat:appcompat-resources:1.7.0-alpha03 เผยแพร่แล้ว เวอร์ชัน 1.7.0-alpha03 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • การรองรับการรับภาษาของแต่ละแอปในบริบทที่ไม่ใช่กิจกรรม (I58e753) เราได้เพิ่ม API ใหม่ 4 รายการสําหรับฟีเจอร์นี้

    • LocaleManagerCompat.getApplicationLocales(): สำหรับนักพัฒนาแอปในการนำภาษาของแต่ละแอปออกจากขอบเขตกิจกรรม

    • ContextCompat.getString(): แสดงสตริงที่แปลแล้วตามภาษาของแต่ละแอป

    • ContextCompat.getContextForLanguage(): บริบทที่เมธอดนี้แสดงผลจะเป็นไปตามภาษาของแต่ละแอป

    • ConfigurationCompat.setLocales(): สำหรับ API ข้างต้น เพื่อตั้งค่าภาษาของการกำหนดค่า

การเปลี่ยนแปลงอื่นๆ ของ API

  • เพิ่ม setLineHeight(unit, lineHeight) ลงในคลาสที่เข้ากันได้ของ TextView (Ia9fa9)
  • เพิ่ม setLineHeight(unit, lineHeight) ไปยังคลาสที่เข้ากันได้ของ TextView (Ib2ee1)
  • เพิ่ม setLineHeight(unit, lineHeight) ไปยังคลาสที่เข้ากันได้ของ TextView (I15716)

การแก้ไขข้อบกพร่อง

  • ตอนนี้ AppCompatDialog จะตั้งค่า LifecycleOwner, SavedStateRegistryOwner และ OnBackPressedDispatcherOwner ในมุมมองการตกแต่งของกล่องโต้ตอบผ่าน ViewTree API อย่างถูกต้องแล้ว ซึ่งจะแก้ไขปัญหาเมื่อโฮสต์ ComposeView ภายใน AppCompatDialog ตอนนี้ AppCompat ต้องใช้ Activity 1.7.0 (Ib28ab, b/261314581)
  • ปรับปรุงประสิทธิภาพของ SupportMenuInflater (I0b087) อย่างมาก

เวอร์ชัน 1.7.0-alpha02

8 กุมภาพันธ์ 2023

androidx.appcompat:appcompat:1.7.0-alpha02 และ androidx.appcompat:appcompat-resources:1.7.0-alpha02 เผยแพร่แล้ว เวอร์ชัน 1.7.0-alpha02 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขหน่วยความจํารั่วไหลใน AppCompatDelegate.getLocaleManagerForApplication() (44b57fd)
  • ตอนนี้ AppCompat ขึ้นอยู่กับ Fragment เวอร์ชัน 1.5.4 (I54dcd)

เวอร์ชัน 1.7.0-alpha01

5 ตุลาคม 2022

androidx.appcompat:appcompat:1.7.0-alpha01 และ androidx.appcompat:appcompat-resources:1.7.0-alpha01 เผยแพร่แล้ว เวอร์ชัน 1.7.0-alpha01 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • ตอนนี้ AppCompatActivity จะตั้งค่า ViewTreeOnBackPressedDispatcherOwner เพื่อให้ดึงข้อมูลตัวจัดสรรจากมุมมองได้ (I1a115, b/235416503)
  • ตอนนี้ Locale.getDefault() จะแสดงภาษาของระบบหลังจากการเริ่มต้นแบบ Cold Start (I6a94b)
  • LinearLayoutCompat เก็บพารามิเตอร์เลย์เอาต์ระยะขอบไว้แล้ว (Id2af4)

เวอร์ชัน 1.6.1

เวอร์ชัน 1.6.1

8 กุมภาพันธ์ 2023

androidx.appcompat:appcompat:1.6.1 และ androidx.appcompat:appcompat-resources:1.6.1 เผยแพร่แล้ว เวอร์ชัน 1.6.1 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขหน่วยความจํารั่วไหลใน AppCompatDelegate.getLocaleManagerForApplication() (44b57fd)

เวอร์ชัน 1.6.0

เวอร์ชัน 1.6.0

11 มกราคม 2023

androidx.appcompat:appcompat:1.6.0 และ androidx.appcompat:appcompat-resources:1.6.0 เผยแพร่แล้ว เวอร์ชัน 1.6.0 มีคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.5.0

  • เพิ่มการรองรับการปรับแต่งภาษาของแอปพลิเคชัน ดูข้อมูลเพิ่มเติมได้ที่ AppCompatDelegate.setApplicationLocales(LocaleListCompat) มอบความเข้ากันได้แบบย้อนหลังสำหรับ API ค่ากําหนดตามภาษาใหม่ที่มีให้ใช้งานใน Android 13
  • การอัปเดตความสามารถในการเป็นค่าว่างให้สอดคล้องกับ SDK ของ Android 13 (Tiramisu, API ระดับ 33)
  • เพิ่มคลาสที่เข้ากันได้ของ DrawableWrapper, DrawableContainer และ StateListDrawable ไปยังแพลตฟอร์ม API สาธารณะ

เวอร์ชัน 1.6.0-rc01

7 กันยายน 2022

androidx.appcompat:appcompat:1.6.0-rc01 และ androidx.appcompat:appcompat-resources:1.6.0-rc01 เผยแพร่แล้ว เวอร์ชัน 1.6.0-rc01 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • ตอนนี้ AppCompatActivity จะตั้งค่า ViewTreeOnBackPressedDispatcherOwner เพื่อให้ดึงข้อมูลตัวจัดสรรจากมุมมองได้ (I1a115, b/235416503)
  • เปลี่ยนการแก้ไขข้อบกพร่องที่เขียนทับการกำหนดค่าที่ส่งไปยัง onConfigurationChanged ซึ่งทำให้เกิดปัญหากับการทดสอบที่แทรกการกำหนดค่าที่กำหนดเองผ่าน onConfigurationChanged

เวอร์ชัน 1.6.0-beta01

10 สิงหาคม 2022

androidx.appcompat:appcompat:1.6.0-beta01 และ androidx.appcompat:appcompat-resources:1.6.0-beta01 เผยแพร่แล้ว เวอร์ชัน 1.6.0-beta01 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลง API

  • ย้ายคลาส DrawableWrapper, DrawableContainer และ StateListDrawable compat ไปยัง API สาธารณะ (I37f3e, b/227789566)
  • เปิดตัวโรงงานใหม่สำหรับเครื่องมือขยายเลย์เอาต์แบบแอซิงค์ (Ia657b)

การแก้ไขข้อบกพร่อง

  • ตอนนี้ Toolbar จะเรียก onPrepareMenu() ก่อนที่เมนูจะแสดงแทนที่จะเรียกแบบไม่มีเงื่อนไขเมื่อสร้างเมนู (I2a58d, b/232206677)
  • ตอนนี้ AppCompat ขึ้นอยู่กับ Lifecycle 2.5.1 และ SavedState 1.2.0 อย่างชัดแจ้ง (I7e3e2)
  • เพิ่มการรองรับการเรียกกลับที่เรียกจากแป้น Back ไปยัง AppCompatDelegate และการใช้งานแถบเครื่องมือที่ AppCompat มีให้ (I24062)
  • สรุป AppCompat API สำหรับ 1.5.0-beta01 (I2a43d, b/236866227)
  • สรุป AppCompat API สำหรับ 1.5.0-beta01 (I2a43d, b/236866227)

เวอร์ชัน 1.6.0-alpha05

15 มิถุนายน 2022

androidx.appcompat:appcompat:1.6.0-alpha05 และ androidx.appcompat:appcompat-resources:1.6.0-alpha05 เผยแพร่แล้ว เวอร์ชัน 1.6.0-alpha05 พัฒนาขึ้นในสาขารุ่นก่อนเผยแพร่แบบส่วนตัวและไม่มีการคอมมิตแบบสาธารณะ

การเปลี่ยนแปลง API

  • การอัปเดตความสามารถในการเป็นค่า Null ให้สอดคล้องกับแพลตฟอร์ม API เวอร์ชันสุดท้ายใน Tiramisu Beta 3 SDK
  • minCompileSdk เปลี่ยนเป็น 33 เพื่อให้สอดคล้องกับ SDK ของ Tiramisu เบต้า 3

เวอร์ชัน 1.6.0-alpha04

18 พฤษภาคม 2022

androidx.appcompat:appcompat:1.6.0-alpha04 และ androidx.appcompat:appcompat-resources:1.6.0-alpha04 เผยแพร่แล้ว ไลบรารีนี้พัฒนาขึ้นจากสาขารุ่นก่อนเผยแพร่แบบส่วนตัว จึงไม่มีบันทึกการคอมมิต

การเปลี่ยนแปลง API

  • เพิ่ม API เพื่อลบล้างข้อจำกัดความกว้างของ SwitchCompat สำหรับ MDC-Android

การแก้ไขข้อบกพร่อง

  • หลีกเลี่ยงการกำหนดค่าที่มีการจัดการเมื่อมีการทําการเปลี่ยนแปลงการกําหนดค่านอก attachBaseConfig

เวอร์ชัน 1.6.0-alpha03

27 เมษายน 2022

androidx.appcompat:appcompat:1.6.0-alpha03 และ androidx.appcompat:appcompat-resources:1.6.0-alpha03 เผยแพร่แล้ว

เวอร์ชันนี้ต้องใช้ Android 13 เบต้า 1 เพื่อคอมไพล์ และไม่มีการรับประกันว่าจะเข้ากันได้กับรันไทม์ของตัวอย่างสำหรับนักพัฒนาแอปในอนาคต

ฟีเจอร์ใหม่

  • รองรับการเลือกภาษาที่กำหนดเองทั่วทั้งแอปผ่าน AppCompatDelegate.setApplicationLocales() มอบสิทธิ์ให้กับการติดตั้งใช้งานแพลตฟอร์มใน API ระดับ 33 ขึ้นไป

เวอร์ชัน 1.6.0-alpha01

23 กุมภาพันธ์ 2022

androidx.appcompat:appcompat:1.6.0-alpha01 และ androidx.appcompat:appcompat-resources:1.6.0-alpha01 เผยแพร่แล้ว เวอร์ชัน 1.6.0-alpha01 สร้างขึ้นจากสาขาภายในและไม่มีคอมมิตที่แสดงต่อสาธารณะ

เวอร์ชันนี้ต้องใช้ Android Tiramisu DP1 เพื่อคอมไพล์ และไม่มีการรับประกันว่าจะเข้ากันได้กับรันไทม์ของตัวอย่างสำหรับนักพัฒนาแอปในอนาคต

ฟีเจอร์ใหม่

  • เพิ่มการรองรับการปรับแต่งภาษาของแอปพลิเคชัน ดูข้อมูลเพิ่มเติมได้ที่ AppCompatDelegate.setApplicationLocales(LocaleListCompat) มอบความเข้ากันได้แบบย้อนหลังสำหรับ API ค่ากําหนดตามภาษาใหม่ที่มีให้ใช้งานใน Android 13

รุ่น 1.5.1

รุ่น 1.5.1

7 กันยายน 2022

androidx.appcompat:appcompat:1.5.1 และ androidx.appcompat:appcompat-resources:1.5.1 เผยแพร่แล้ว เวอร์ชัน 1.5.1 มีคอมมิตเหล่านี้

การอัปเดตทรัพยากร Dependency

เวอร์ชัน 1.5.0

เวอร์ชัน 1.5.0

10 สิงหาคม 2022

androidx.appcompat:appcompat:1.5.0 และ androidx.appcompat:appcompat-resources:1.5.0 เผยแพร่แล้ว เวอร์ชัน 1.5.0 มีคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.4.0

  • เวอร์ชันเสถียรนี้มีการปรับปรุงความเสถียรของโหมดกลางคืน การแก้ไขข้อบกพร่อง และการรองรับการแรเงาสีคอมโพเนนต์ที่วาดได้สำหรับวิดเจ็ตข้อความที่ AppCompat รองรับ และการปรับปรุงความสามารถในการใช้งาน API ดูรายการการเปลี่ยนแปลงโดยละเอียดได้ในบันทึกประจำรุ่นของชุด 1.5.0 ก่อนหน้า

เวอร์ชัน 1.5.0-rc01

27 กรกฎาคม 2022

androidx.appcompat:appcompat:1.5.0-rc01 และ androidx.appcompat:appcompat-resources:1.5.0-rc01 เผยแพร่แล้ว เวอร์ชัน 1.5.0-rc01 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขปัญหาที่ตัวห่อบริบทของ AppCompat นำการใช้งานทรัพยากรสำรองของบริบทแอปพลิเคชันมาใช้ซ้ำ ซึ่งส่งผลให้มีการเขียนทับ uiMode ในบริบทแอปพลิเคชัน (Idf9d5)

เวอร์ชัน 1.5.0-beta01

13 กรกฎาคม 2022

androidx.appcompat:appcompat:1.5.0-beta01 และ androidx.appcompat:appcompat-resources:1.5.0-beta01 เผยแพร่แล้ว เวอร์ชัน 1.5.0-beta01 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลง API

  • เพิ่ม Flag ที่ลบล้างได้เพื่อปิดใช้การปรับความกว้างของปุ่มสวิตช์เริ่มต้น (I37cb7)
  • เพิ่มคำอธิบายประกอบ @FloatRange ลงใน API ที่ใช้รับตำแหน่งภาพขนาดย่อ (If524c)
  • เพิ่มคําอธิบายประกอบเกี่ยวกับ Nullability ที่ขาดหายไปใน AnimatedStateListDrawableCompat (Ieb4ec)

การแก้ไขข้อบกพร่อง

  • สรุป AppCompat API สำหรับ 1.5.0-beta01 (I2a43d, b/236866227)
  • การเปลี่ยนค่า className สำหรับ ActionMenuItemView ให้ถือว่า Button (I5ee1c)

เวอร์ชัน 1.5.0-alpha01

6 เมษายน 2022

androidx.appcompat:appcompat:1.5.0-alpha01 และ androidx.appcompat:appcompat-resources:1.5.0-alpha01 เผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha01 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลง API

  • เพิ่ม API ใหม่เพื่อแสดงตําแหน่งแถบสวิตช์ต่อคลาสย่อย (I9bfb4)
  • อัปเดต Nullability ให้ตรงกับ Tiramisu DP2 (I0cbb7)
  • ย้ายการปรับสีองค์ประกอบที่วาดได้ไปยังวิดเจ็ตที่มาจาก TextView (Idf98c, b/165822337)
  • ตอนนี้ AppCompatDialog ขยาย ComponentDialog เพื่อความเข้ากันได้กับ OnBackPressedDispatcher แล้ว (Id9b91, b/217620781)
  • ตอนนี้ SearchView.onQueryRefine() มีระดับการเข้าถึงที่ได้รับการปกป้องเพื่อให้สามารถลบล้างได้ (I6cce0, b/212882845)

การแก้ไขข้อบกพร่อง

  • ตอนนี้ AppCompat Toolbar จะเรียก onPrepareMenu() API ของ MenuHostHelper (I9b9b5, b/227376894)
  • AppCompatEditText, AppCompatAutoCompleteEditText, AppCompatMultiAutoCompleteEditText จะไม่รีเซ็ต clickable หรือ clickableInLongTap ในคอนสตรัคเตอร์อีกต่อไปเมื่อตั้งค่าใน XML (Ic5066, b/221094907)
  • AppCompatEditText, AppCompatAutoCompleteTextView และ AppCompatMultiAutoCompleteTextView จะไม่เรียกใช้ setKeyListener ที่ลบล้างระหว่างตัวสร้าง (I5c13a, b/208480173)
  • Appcompat จะไม่รวมอินสแตนซ์ของ NumberKeyListener ที่ส่งไปยัง setKeyListener ซึ่งจะช่วยให้ TextView กำหนดค่าภาษาใน NumberKeyListeners ได้อย่างถูกต้อง (Ibf113, b/207119921)
  • แก้ไขข้อบกพร่องเกี่ยวกับคลาสย่อย NumberKeyListener ทั้งหมดที่เปิดตัวใน AppCompat 1.4.0 ซึ่งอนุญาตให้ป้อนอักขระที่ไม่คาดคิด เช่น เครื่องหมายวรรคตอน (Iede7a, b/207119921)

เวอร์ชัน 1.4.2

เวอร์ชัน 1.4.2

1 มิถุนายน 2022

androidx.appcompat:appcompat:1.4.2 และ androidx.appcompat:appcompat-resources:1.4.2 เผยแพร่แล้ว เวอร์ชัน 1.4.2 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขข้อขัดข้องที่ AppCompatDelegateImpl เรียกใช้ ensureSubDecor ภายในก่อนที่จะสร้างแถบการดำเนินการ (aosp/2048349, b/226648941)

เวอร์ชัน 1.4.1

12 มกราคม 2022

androidx.appcompat:appcompat:1.4.1 และ androidx.appcompat:appcompat-resources:1.4.1 เผยแพร่แล้ว เวอร์ชัน 1.4.1 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • AppCompatEditText, AppCompatAutoCompleteTextView และ AppCompatMultiAutoCompleteTextView จะไม่เรียกใช้ setKeyListener ที่ลบล้างไปในระหว่างคอนสตรคเตอร์ (I5c13a, b/208480173)
  • Emoji2 จะไม่ตัดอินสแตนซ์ของ NumberKeyListener ซึ่งช่วยให้ textview กำหนดค่าภาษาได้
    • Appcompat จะไม่รวมอินสแตนซ์ของ NumberKeyListener ที่ส่งไปยัง setKeyListener ซึ่งจะช่วยให้ TextView กำหนดค่าภาษาใน NumberKeyListeners ได้อย่างถูกต้อง (Ibf113, b/207119921)
  • แก้ไขข้อบกพร่องเกี่ยวกับคลาสย่อย NumberKeyListener ทั้งหมดที่เปิดตัวใน appcompat 1.4.0 ซึ่งอนุญาตให้ป้อนอักขระที่ไม่คาดคิด เช่น เครื่องหมายวรรคตอน (b/207119921) (Iede7a, b/207119921)

เวอร์ชัน 1.4.0

เวอร์ชัน 1.4.0

17 พฤศจิกายน 2021

androidx.appcompat:appcompat:1.4.0 และ androidx.appcompat:appcompat-resources:1.4.0 เผยแพร่แล้ว เวอร์ชัน 1.4.0 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.3.0

  • ตอนนี้ไลบรารีกําหนดเป้าหมายเป็นระดับภาษา Java 8 แล้ว
  • ระบบจะเปิดใช้การรองรับอีโมจิที่อัปเดตได้ผ่านไลบรารี androidx.emoji2 โดยค่าเริ่มต้น
  • ปรับปรุงการตรวจสอบแอตทริบิวต์ในเครื่องมือตรวจสอบเลย์เอาต์ของ Android Studio (I02d55)
  • เพิ่มการรองรับทรัพยากรที่ปรับสีและภาพวาดเวกเตอร์ที่ฝังอยู่ในแบ็กพอร์ตการโหลดทรัพยากร AppCompat อย่างไรก็ตาม โปรดทราบว่าการดำเนินการนี้หมายความว่าแอปจะลบล้าง getDrawable() บนออบเจ็กต์ Resources ที่กําหนดเองไม่ได้เมื่อเปิดใช้การพอร์ตย้อนกลับ (Ia6b03, b/176129022)
  • ย้ายข้อมูลพื้นหลังและเครื่องหมายถูกที่ปรับสีได้สำหรับ CheckedTextView ไปยังรุ่นเก่า (I8575c)

เวอร์ชัน 1.4.0-rc01

27 ตุลาคม 2021

androidx.appcompat:appcompat:1.4.0-rc01 และ androidx.appcompat:appcompat-resources:1.4.0-rc01 เผยแพร่แล้ว เวอร์ชัน 1.4.0-rc01 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.4.0-beta01

29 กันยายน 2021

androidx.appcompat:appcompat:1.4.0-beta01 และ androidx.appcompat:appcompat-resources:1.4.0-beta01 เผยแพร่แล้ว เวอร์ชัน 1.4.0-beta01 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลง API

  • ตอนนี้ AndroidX AppCompat Toolbar กลายเป็น MenuHost และจัดการ MenuProvider ได้แล้ว (I5cd95)

การแก้ไขข้อบกพร่อง

  • แก้ไขการจัดการแถบความคืบหน้าของรายการเลเยอร์ของ AppCompatProgressBar (I6ece3, b/142004509)
  • เก็บ android:digits ใน AppCompatEditText อย่างถูกต้อง ซึ่งจะแก้ไขข้อบกพร่อง 193047889 ที่พบใน AppCompat 1.4.0-alpha03 (I4b4fc, b/193047889)
  • ผสานรวม SDK ของ OnReceiveContentListener และรองรับ lib API (Ic6914, b/173814913)

เวอร์ชัน 1.4.0-alpha03

30 มิถุนายน 2021

androidx.appcompat:appcompat:1.4.0-alpha03 และ androidx.appcompat:appcompat-resources:1.4.0-alpha03 เผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha03 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ตอนนี้ไลบรารีกําหนดเป้าหมายเป็นระดับภาษา Java 8 แล้ว
  • เพิ่มการรองรับ emoji2 สำหรับคลาสย่อย TextView เพิ่มเติม (AppCompatMultiAutoCompleteTextView, AppCompatAutoCompleteTextView, AppCompatRadioButton, AppCompatCheckBox)

การเปลี่ยนแปลง API

  • เพิ่ม API เพื่อกําหนดค่า InputConnection ให้ใช้ View.performReceiveContent เพื่อจัดการการเรียก IME ไปยัง InputConnection.commitContent (I3a2ad)
  • เพิ่มการรองรับ EmojiCompat ใน AppCompatMultiAutoCompleteTextView (Ifece0)
  • เพิ่มการรองรับ EmojiCompat ใน AppCompatAutoCompleteTextView (Ia1f4b)
  • เพิ่มการรองรับ EmojiCompat ใน AppCompatRadioButton (If08af)
  • เพิ่มการรองรับ EmojiCompat ใน AppCompatCheckBox (I2b3bc)
  • อนุญาต KeyListener ค่า Null ใน AppCompatEditText ซึ่งจะยกเลิกการกำกับเนื้อหาที่ไม่ใช่ค่า Null ที่เพิ่มลงใน AppCompatEditText ใน 1.4-alpha01 และคืนค่าลักษณะการทำงานก่อนหน้าเมื่อส่งค่า Null (I21482, b/189559345)
  • เพิ่ม PopupMenu.setForceShowIcon เพื่อให้สอดคล้องกับ API ของแพลตฟอร์ม (I43bb3, b/182789798)

การแก้ไขข้อบกพร่อง

  • แก้ไขข้อบกพร่องใน AppCompatEditText ที่จะรีเซ็ต inputType ที่ระบุใน XML เพื่อนำตัวแปรออก ข้อบกพร่องนี้เกิดขึ้นใน AppCompat 1.4.0-alpha01 (I9df36, b/191061070)

เวอร์ชัน 1.4.0-alpha02

2 มิถุนายน 2021

androidx.appcompat:appcompat:1.4.0-alpha02 และ androidx.appcompat:appcompat-resources:1.4.0-alpha02 เผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha02 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลง API

  • เพิ่มคอนสตรัคเตอร์ AppCompatDialogFragment ที่ใช้รหัสเลย์เอาต์ (Icbf22, b/188119987)
  • การรองรับเครื่องมือตรวจสอบเลย์เอาต์ที่ปรับปรุงใหม่ (I02d55)
  • เปลี่ยนชื่อแพ็กเกจใน emoji2-views-helper เป็น androidx.emoji2.viewsintegration แล้ว การเปลี่ยนแปลงนี้เป็นการเปลี่ยนแปลงที่ส่งผลต่อ AppCompat 1.4.0-alpha01 และแอปต้องอัปเดตการพึ่งพา AppCompat เพื่อใช้ emoji2 เวอร์ชันใหม่ (Ie8397)

การแก้ไขข้อบกพร่อง

  • แก้ไขปัญหาที่กิจกรรมที่หยุดทำงานไม่ได้รับการเปลี่ยนแปลงการกำหนดค่าจากการเปลี่ยนแปลงโหมดกลางคืนที่เครื่องมือ AppCompat ตรวจวัด (I8fa8f, b/188681415)
  • แก้ไขข้อบกพร่องใน AppCompatEditText ซึ่งจะทำให้สามารถโฟกัสวิวได้แม้ว่าจะมีการระบุ android:focusable="false" ใน XML ก็ตาม (ข้อบกพร่องที่เกิดขึ้นใน AppCompat 1.4.0-alpha01) (Ib9412)

เวอร์ชัน 1.4.0-alpha01

18 พฤษภาคม 2021

androidx.appcompat:appcompat:1.4.0-alpha01 และ androidx.appcompat:appcompat-resources:1.4.0-alpha01 เผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha01 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลง API

  • การรองรับ EmojiCompat ที่ผสานรวมกับวิดเจ็ต AppCompat ที่หลากหลาย (Id409b, If7a1a, Ic262d, Ib5f4a, I4fb3c)
  • เพิ่มการรองรับทรัพยากรที่ปรับสีและภาพวาดเวกเตอร์ที่ฝังอยู่ในแบ็กพอร์ตการโหลดทรัพยากร AppCompat อย่างไรก็ตาม โปรดทราบว่าแอปจะลบล้าง getDrawable() บนออบเจ็กต์ Resources ที่กําหนดเองไม่ได้เมื่อเปิดใช้การพอร์ตย้อนกลับ (Ia6b03, b/176129022)
  • ปรับปรุงการรองรับเครื่องมือตรวจสอบเลย์เอาต์ (I6d771)

การแก้ไขข้อบกพร่อง

  • แก้ไขกรณีที่การเรียก setSupportActionBar หลังจากตั้งค่าการเรียกกลับของหน้าต่างจะเขียนทับการเรียกกลับ (Ie43ee, b/186791590)
  • เพิ่มวิธีแก้ปัญหาสำหรับปัญหาใน SDK 29 และ 30 ที่ทรัพยากร ColorStateListDrawable ที่โคลนจากแคช Drawable ไม่โหลดสีเริ่มต้นจนกว่าจะได้รับการเปลี่ยนสถานะ (Iedb4b)
  • หลีกเลี่ยง NPE เมื่อจัดการการเรียกกลับโหมดการดำเนินการแบบกำหนดเองซึ่งไม่มีค่าในมุมมองที่ AppCompat รองรับ (I033c7, b/173435375)

การอัปเดตทรัพยากร Dependency

การมีส่วนร่วมจากภายนอก

  • แบ็กพอร์ตพื้นหลังที่ปรับสีได้และเครื่องหมายถูกสำหรับ CheckedTextView (I8575c)

เวอร์ชัน 1.3.1

เวอร์ชัน 1.3.1

21 กรกฎาคม 2021

androidx.appcompat:appcompat:1.3.1 และ androidx.appcompat:appcompat-resources:1.3.1 เผยแพร่แล้ว เวอร์ชัน 1.3.1 มีคอมมิตเหล่านี้

การอัปเดตทรัพยากร Dependencies

  • ตอนนี้ AppCompat ขึ้นอยู่กับ Activity 1.2.4 และ Fragment 1.3.6 ซึ่งทำให้การแก้ไขจากรุ่นเหล่านั้นรวมอยู่โดยค่าเริ่มต้นเมื่อใช้ AppCompat 1.3.1 (I8fbec)

เวอร์ชัน 1.3.0

เวอร์ชัน 1.3.0

18 พฤษภาคม 2021

androidx.appcompat:appcompat:1.3.0 และ androidx.appcompat:appcompat-resources:1.3.0 เผยแพร่แล้ว เวอร์ชัน 1.3.0 มีคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.2.0

  • แก้ไขการนำไปใช้งานแอตทริบิวต์ android:theme ในเลย์เอาต์ <include>d ในอุปกรณ์รุ่นก่อน Lollipop
  • ลดขนาดคลังโดยแปลงทรัพยากร PNG จำนวนมากเป็น VectorDrawable
  • เพิ่มการรองรับเหตุการณ์แบบลากและวางลงใน AppCompatEditText ด้วย OnReceiveContentListener
  • อัปเดตเพื่อรองรับการเปลี่ยนแปลงการจัดการส่วนแทรกของหน้าต่างใน Android 11
  • เพิ่มการรองรับ RTL ในรายการเมนูที่มีไอคอน
  • เพิ่มการรองรับการแทรกเนื้อหาริชมีเดีย (เช่น การวางรูปภาพ) ใน AppCompatEditText

  • การอัปเดตไลบรารีที่ใช้ร่วมกัน: appcompat ได้อัปเดตไลบรารีที่ใช้ร่วมกันแบบทรานซิทีฟหลายรายการเพื่อรองรับฟังก์ชันการทำงานและการแก้ไขใหม่ ดังนี้

เวอร์ชัน 1.3.0-rc01

24 มีนาคม 2021

androidx.appcompat:appcompat:1.3.0-rc01 และ androidx.appcompat:appcompat-resources:1.3.0-rc01 เผยแพร่แล้ว เวอร์ชัน 1.3.0-rc01 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • ป้องกันไม่ให้มีการเพิกถอนสิทธิ์ก่อนเวลาอันควรเมื่อจัดการการแทรกเนื้อหา IME

การอัปเดตทรัพยากร Dependency

การมีส่วนร่วมจากภายนอก

  • แก้ไขการนำไปใช้งานแอตทริบิวต์ android:theme ในเลย์เอาต์ <include>d ในอุปกรณ์รุ่นก่อน Lollipop (Simon Bergner จาก Opera)

เวอร์ชัน 1.3.0-beta01

13 มกราคม 2021

androidx.appcompat:appcompat:1.3.0-beta01 และ androidx.appcompat:appcompat-resources:1.3.0-beta01 เผยแพร่แล้ว เวอร์ชัน 1.3.0-beta01 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เราได้แทนที่ภาพวาดโหมดการดำเนินการระดับธีมด้วยแหล่งที่มาของเวกเตอร์ ซึ่งอาจทำให้รูปลักษณ์ของไอคอนแต่ละรายการมีการเปลี่ยนแปลงเล็กน้อย (I741a6)

การเปลี่ยนแปลง API

  • การผสานรวมการลากและวาง (เหตุการณ์วาง) ใน AppCompatEditText ด้วย OnReceiveContentListener (Ib26c9, b/175343405)
  • อัปเดต OnReceiveContentListener และ API ที่เกี่ยวข้อง ดูรายละเอียดเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงไลบรารี androidx.core (Ib4616, b/173814913)
  • ย้าย widget.RichContentReceiverCompat ไปยัง view.OnReceiveContentListener (Ifdab7, b/173814913)
  • เราได้พอร์ต API สำหรับการระบุและดึงข้อมูลข้อความรอบๆ เริ่มต้นไปยัง EditorInfoCompat แล้ว ซึ่งช่วยให้แอป IME หลีกเลี่ยงเวลาในการตอบสนองของ IPC เพิ่มเติมได้ (Ie3809)

เวอร์ชัน 1.3.0-alpha02

19 สิงหาคม 2020

androidx.appcompat:appcompat:1.3.0-alpha02 และ androidx.appcompat:appcompat-resources:1.3.0-alpha02 เผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha02 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แหล่งที่มาของเวกเตอร์ได้เข้ามาแทนที่ภาพวาด AppCompatRatingBar รูปแบบ PNG ซึ่งอาจทำให้ลักษณะที่ปรากฏของดวงดาวแต่ละดวงมีการเปลี่ยนแปลงเล็กน้อย (I6b99d)
  • อัปเดต WindowInsetsCompat เป็น API ของ Android 11 (I3df9e)
  • รองรับ RTL ในรายการเมนูที่มีไอคอน (I2f5c5)

การอัปเดตทรัพยากร Dependency

  • AppCompat ได้อัปเดตทรัพยากร Dependency จาก Fragment 1.1.0 เป็น Fragment 1.3.0-alpha08 เราขอแนะนําอย่างยิ่งให้อ่านบันทึกประจำรุ่น 1.2.0 เพื่อให้เข้าใจการเปลี่ยนแปลงที่สำคัญที่เปิดตัวในรุ่น Fragment ก่อนหน้า
  • AppCompat ได้อัปเดตการพึ่งพาจาก Activity 1.0.0 เป็น Activity 1.2.0-alpha08 เราขอแนะนําอย่างยิ่งให้อ่านบันทึกประจำรุ่นของ Activity 1.1.0 เพื่อให้เข้าใจการเปลี่ยนแปลงที่สำคัญที่เปิดตัวในรุ่น Activity ก่อนหน้า
    • ตอนนี้ AppCompatActivity ใช้ OnContextAvailableListener API ที่เปิดตัวใน กิจกรรม 1.2.0-alpha08 เพื่อตั้งค่า AppCompatDelegate Listener ที่เพิ่มลงในคลาสย่อยของ AppCompatActivity จะทํางานหลังจาก Listener นี้ (I513da)

เวอร์ชัน 1.3.0-alpha01

20 พฤษภาคม 2020

androidx.appcompat:appcompat:1.3.0-alpha01 และ androidx.appcompat:appcompat-resources:1.3.0-alpha01 เผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha01 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มกฎ Lint ใหม่เพื่อแจ้งการเรียก setActionBar ในกิจกรรมที่ขยาย AppCompatActivity
  • เพิ่มการรองรับ ViewTreeLifecycleOwner จาก Lifecycle 2.3.0-alpha01, ViewTreeViewModelStoreOwner จาก Lifecycle 2.3.0-alpha03 และ ViewTreeSavedStateRegistryOwner จาก SavedState 1.1.0-alpha01 เมื่อใช้ View ภายใน AppCompatActivity (b/151603528, aosp/1300264)
  • เพิ่ม API ทั่วไปสําหรับการแทรกเนื้อหาแบบริชมีเดีย (เช่น การวางรูปภาพ) แบ็กคอลใหม่นี้มี API เดียวที่แอปสามารถนำมาใช้งานได้เพื่อรองรับการแทรกเนื้อหาริชมีเดียด้วยวิธีต่างๆ ขณะนี้ระบบจะเพิ่ม API ลงใน AppCompatEditText เท่านั้น และจะเรียกใช้สำหรับเส้นทางโค้ดต่อไปนี้
    • วางจากคลิปบอร์ด
    • แทรกเนื้อหาจาก IME (InputConnection.commitContent) (I22bf7)

การแก้ไขข้อบกพร่อง

  • จาก AppCompat 1.2.0-rc01: AppCompat จะไม่เรียก onMenuOpened() ด้วยเมนู null อีกต่อไป (b/142843126)
  • แก้ปัญหาสีของลิงก์ข้อความและคำแนะนำในอุปกรณ์รุ่นเก่าอย่างถูกต้องเมื่อเรียกใช้ TextViewCompat.setTextAppearance ด้วยสไตล์ลักษณะที่ปรากฏของข้อความซึ่งมีรายการสถานะสีที่อ้างอิงแอตทริบิวต์สีของธีม (b/154702995)

เวอร์ชัน 1.2.0

เวอร์ชัน 1.2.0

5 สิงหาคม 2020

androidx.appcompat:appcompat:1.2.0 และ androidx.appcompat:appcompat-resources:1.2.0 เผยแพร่แล้ว เวอร์ชัน 1.2.0 มีคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0

  • แก้ไขการรองรับกรณีการใช้งานการลบล้างการกําหนดค่า ซึ่งรวมถึงภาษาและขนาดแบบอักษรที่กําหนดเอง ดูตัวอย่างวิธีใช้การลบล้างโดยใช้ appcompat:1.2.0 อย่างถูกต้องได้ที่นี่
  • เลิกใช้งาน AppCompatDelegate.attachBaseContext() หากคุณเรียกใช้หรือลบล้างเมธอดนี้ ให้ใช้ AppCompatDelegate.attachBaseContext2() แทน
  • เลิกใช้งาน CollapsibleActionView คุณไม่จำเป็นต้องใช้อินเทอร์เฟซนี้อีกต่อไป ให้ใช้อินเทอร์เฟซ android.view.CollapsibleActionView ที่แพลตฟอร์มมีให้

เวอร์ชัน 1.2.0-rc02

22 กรกฎาคม 2020

androidx.appcompat:appcompat:1.2.0-rc02 และ androidx.appcompat:appcompat-resources:1.2.0-rc02 เผยแพร่แล้ว เวอร์ชัน 1.2.0-rc02 มีการคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขปัญหาเกี่ยวกับโหมดกลางคืนที่บางครั้งการเรียกใช้ AppCompatDelegate.setDefaultNightMode จากกล่องโต้ตอบจะสร้างกิจกรรมใหม่และใช้โหมดใหม่ไม่ได้ (aosp/1348308, b/158923881)

เวอร์ชัน 1.2.0-rc01

14 พฤษภาคม 2020

androidx.appcompat:appcompat:1.2.0-rc01 และ androidx.appcompat:appcompat-resources:1.2.0-rc01 เผยแพร่แล้ว เวอร์ชัน 1.2.0-rc01 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลง API

  • AppCompatDelegate.setLocalNightMode มีการทำเครื่องหมายว่าต้องใช้ SDK เวอร์ชัน 17 ขึ้นไปเนื่องจากปัญหาแพลตฟอร์มเกี่ยวกับการเปลี่ยนแปลงการกำหนดค่าที่รั่วไหลระหว่างกิจกรรมใน SDK เวอร์ชันเก่า

การแก้ไขข้อบกพร่อง

  • ตอนนี้ AppCompatDelegate.setLocalNightMode สามารถโทรหาก่อน Activity.attachBaseContext ได้แล้ว
  • แก้ไขการใช้ ActionBarOverlayLayout inset ซึ่งใช้ inset ที่แคชไว้อย่างไม่ถูกต้อง
  • AppCompat จะไม่เรียก onMenuOpened() ด้วยเมนู null อีกต่อไป (b/142843126)

เวอร์ชัน 1.2.0-beta01

1 เมษายน 2020

androidx.appcompat:appcompat:1.2.0-beta01 และ androidx.appcompat:appcompat-resources:1.2.0-beta01 เผยแพร่แล้ว เวอร์ชัน 1.2.0-beta01 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มกฎใหม่ของ Lint ต่อไปนี้ที่จะแจ้งการใช้ AppCompat ที่ไม่ถูกต้องในสถานการณ์ต่อไปนี้
    • กำลังโหลดรายการสถานะสี: แนะนำให้ใช้ ContextCompat และ AppCompatResources API เพื่อความเข้ากันได้แบบย้อนหลัง
    • การโหลด drawable: แนะนำให้ใช้ ContextCompat และ ResourcesCompat API เพื่อความเข้ากันได้แบบย้อนหลัง
    • การใช้รายการสถานะสีกับแอตทริบิวต์อัลฟ่า: FLAG ไม่มีแอตทริบิวต์ android:alpha ซึ่งจะทำให้ลักษณะที่ปรากฏไม่ถูกต้องในแพลตฟอร์มบางเวอร์ชัน
    • การกรองสีในมุมมองรูปภาพ: การตั้งค่าที่ไม่ใช้ app:tint ซึ่งจะทำให้รูปภาพปรากฏไม่ถูกต้องในแพลตฟอร์มเวอร์ชันเก่า
    • การใช้องค์ประกอบภาพแบบคอมโพเนนต์และการทำให้สีเข้มในวิวข้อความ: แนะนำให้ใช้แอตทริบิวต์และ API ที่เข้ากันได้เพื่อการทำงานแบบย้อนหลัง

การแก้ไขข้อบกพร่อง

  • แก้ไขปัญหาที่ ActionBarOverlayLayout (การดำเนินการตกแต่งหน้าต่าง) ไม่ได้ส่ง WindowInsets อย่างถูกต้อง
  • แก้ไขปัญหาการปรับสีขององค์ประกอบที่วาดได้และลักษณะที่ปรากฏของข้อความในแพลตฟอร์มเวอร์ชันเก่า
  • แก้ไขปัญหาที่ androidx.appcompat:appcompat:1.1.0 ทำให้เว็บเบราว์เซอร์ขัดข้องเมื่อกดเว็บเบราว์เซอร์ค้างไว้ (b/141351441)
  • ติดตั้งใช้งานการแก้ไขสำหรับปัญหาเกี่ยวกับการดัดแปลงบริบทพื้นฐานและการเรียกข้อมูลบริการของระบบระหว่างที่กิจกรรมเริ่มต้น

เวอร์ชัน 1.2.0-alpha03

4 มีนาคม 2020

androidx.appcompat:appcompat:1.2.0-alpha03 และ androidx.appcompat:appcompat-resources:1.2.0-alpha03 เผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha03 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขปัญหาที่แถบสถานะโหมดการดำเนินการขยายเข้าไปในแถบนําทางและมีสีไม่ถูกต้อง (Ia4a09)
  • แก้ไขปัญหาที่กิจกรรมที่หยุดไว้ไม่กลับมาทำงานต่อใน API ระดับ 23 และต่ำกว่า (I45201)

เวอร์ชัน 1.2.0-alpha02

29 มกราคม 2020

androidx.appcompat:appcompat:1.2.0-alpha02 และ androidx.appcompat:appcompat-resources:1.2.0-alpha02 เผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha02 มีการคอมมิตเหล่านี้

แก้ไขข้อบกพร่อง

  • แก้ไขปัญหาที่ appcompat 1.1.0 ทำให้ WebView ขัดข้องเมื่อกดค้าง (b/141351441)
  • แก้ไขการปรับสีของ Drawable ใน TextView ที่เกี่ยวข้องกับ Drawable แบบคอมโพเนนต์ใน API ระดับ 23 (aosp/1172194)
  • ตรวจสอบว่าบริบทพื้นฐานเป็น Wrapper เสมอ (aosp/1194355)
  • เพิ่มการปรับปรุงบางอย่างเพื่อให้ฉลาดขึ้นเมื่อแก้ไขการกำหนดค่าบริบทพื้นฐาน (aosp/1204543)
  • ปิดใช้ createConfigurationContext() สำหรับ Robolectric (aosp/1186218)

เวอร์ชัน 1.2.0-alpha01

4 ธันวาคม 2019

androidx.appcompat:appcompat:1.2.0-alpha01 และ androidx.appcompat:appcompat-resources:1.2.0-alpha01 เผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha01 มีการคอมมิตเหล่านี้

แก้ไขข้อบกพร่อง

  • การเรียก PackageManager.getActivityInfo ไม่ขัดข้องอีกต่อไปในโหมดที่เข้มงวดเมื่อเปิดใช้การตรวจสอบที่ทราบเกี่ยวกับการบูต
  • แก้ไขการกรองสีของ Drawable ใน AppCompatButton
  • การแก้ไขการปรับสีและลักษณะข้อความในแพลตฟอร์มเวอร์ชันเก่า

เวอร์ชัน 1.1.0

เวอร์ชัน 1.1.0

5 กันยายน 2019

androidx.appcompat:appcompat:1.1.0 และ androidx.appcompat:appcompat-resources:1.1.0 เผยแพร่แล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่

การเปลี่ยนแปลงที่สําคัญตั้งแต่เวอร์ชัน 1.0.0

  • การปรับปรุงโหมดมืด: MODE_NIGHT_AUTO และการเปลี่ยนโหมดมืด/สว่างตามเวลาปัจจุบันจะเลิกใช้งานแล้ว พิจารณาใช้การตั้งค่าที่ชัดเจนหรือ MODE_NIGHT_AUTO_BATTERY
  • กิจกรรม 1.0: ตอนนี้ AppCompatActivity ขยายจาก ComponentActivity จาก กิจกรรม 1.0.0 ผ่าน Fragment 1.1.0 ดูข้อมูลเกี่ยวกับการเปลี่ยนแปลงในคลังแต่ละรายการได้ในบันทึกประจำรุ่นที่เกี่ยวข้อง
  • เครื่องมือสร้าง LayoutId ของ AppCompatActivity: ตอนนี้คลาสย่อยของ AppCompatActivity สามารถเรียกใช้เครื่องมือสร้างใน AppCompatActivity ที่ใช้รหัส R.layout ซึ่งระบุเลย์เอาต์ที่ควรตั้งค่าเป็นมุมมองเนื้อหาแทนการเรียก setContentView() ใน onCreate() การดำเนินการนี้จะไม่เปลี่ยนแปลงข้อกำหนดที่ว่าคลาสย่อยต้องมีตัวสร้างที่ไม่มีอาร์กิวเมนต์

เวอร์ชัน 1.1.0-rc01

2 กรกฎาคม 2019

androidx.appcompat:appcompat:1.1.0-rc01 และ androidx.appcompat:appcompat-resources:1.1.0-rc01 เผยแพร่แล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่

แก้ไขข้อบกพร่อง

  • ตอนนี้ DayNight จะใช้ configChanges อย่างถูกต้องแล้ว (aosp/981105)
  • เรียกใช้ onConfigurationChanged ในกิจกรรมที่เริ่มต้นเท่านั้น (aosp/987483)

เวอร์ชัน 1.1.0-beta01

5 มิถุนายน 2019

androidx.appcompat:appcompat:1.1.0-beta01 และ androidx.appcompat:appcompat-resources:1.1.0-beta01 เผยแพร่แล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่

แก้ไขข้อบกพร่อง

  • ตรวจสอบว่าเราล้างข้อมูลตัวรับใน AppCompatDialogs แล้ว (aosp/959376)
  • เพิ่มการรองรับ buttonGravity=center_vertical ในแถบเครื่องมือ (b/130361721)
  • แก้ไขระยะห่างแนวนอนของสปินเนอร์ (b/79477181)

เวอร์ชัน 1.1.0-alpha05

7 พฤษภาคม 2019

androidx.appcompat:appcompat:1.1.0-alpha05 และ androidx.appcompat:appcompat-resources:1.1.0-alpha05 เผยแพร่แล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่

ฟีเจอร์ใหม่

  • ตอนนี้ setDefaultNightMode() จะสร้างกิจกรรมที่เริ่มต้นไว้ใหม่โดยอัตโนมัติ

แก้ไขข้อบกพร่อง

  • การแก้ไขต่างๆ ในโหมดกลางวัน/กลางคืน
  • ทำให้ขอบร่างเป็นโมฆะเมื่อเกิดการเปลี่ยนแปลงในเบื้องหลังใน ActionBar
  • แก้ไขการเลื่อนวิดเจ็ตสปินเนอร์
  • แก้ไขพื้นหลังหน้าต่างที่กำหนดเองซึ่งมีการลบล้างใน AlertDialog

เวอร์ชัน 1.1.0-alpha04

3 เมษายน 2019

androidx.appcompat:appcompat:1.1.0-alpha04 และ androidx.appcompat:appcompat-resources:1.1.0-alpha04 เผยแพร่แล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่

ฟีเจอร์ใหม่

  • เพิ่มธีมใหม่ในตระกูล ThemeOverlay.AppCompat.DayNight ควรใช้ค่าเหล่านี้เมื่อใช้ฟีเจอร์กลางวัน/กลางคืน

การเปลี่ยนแปลง API

  • ตอนนี้ AppCompatActivity มีคอนสตรัคเตอร์ที่ 2 ซึ่งใช้ @LayoutRes int ซึ่งมาแทนที่ลักษณะการทำงานก่อนหน้านี้ของการกำกับเนื้อหาในคลาส AppCompatActivity ด้วย @ContentView แนวทางนี้ใช้ได้ทั้งในโมดูลแอปและโมดูลคลัง (b/128352521)

แก้ไขข้อบกพร่อง

  • ปักหมุดทรัพยากรภายในไว้กับเวอร์ชันที่เสถียรเมื่อเป็นไปได้
  • แก้ไขAppCompatSpinnerการเลื่อนในโหมดเมนูแบบเลื่อนลง )b/124274573)
  • โทรหา applyOverrideConfiguration() เท่านั้น หากจำเป็นสำหรับ DayNight

เวอร์ชัน 1.1.0-alpha03

13 มีนาคม 2019

androidx.appcompat:appcompat:1.1.0-alpha03 และ androidx.appcompat:appcompat-resources:1.1.0-alpha03 เผยแพร่แล้ว นี่เป็นรุ่นแรกของ appcompat-resources ดูรายการคอมมิตทั้งหมดที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่

ฟีเจอร์ใหม่

  • ไลบรารี appcompat-resources ใหม่มี API ที่ช่วยให้แอปโหลดและปรับสีรูปภาพที่วาดได้ (รวมถึงรูปภาพที่วาดได้แบบเวกเตอร์) ในแพลตฟอร์มเวอร์ชันเก่าได้ ฟังก์ชันการทำงานนี้เหมือนกับที่เคยเป็นส่วนหนึ่งของข้อบังคับของแอป แต่ตอนนี้พร้อมใช้งานโดยไม่มีค่าใช้จ่ายเพิ่มเติมของการนำการออกแบบ Material Design ไปใช้กับแอปเวอร์ชันเก่าแบบเต็ม ซึ่งรวมถึงวิดเจ็ต กล่องโต้ตอบ โหมดกลางคืน ฯลฯ
  • การแก้ไขที่สำคัญเกี่ยวกับการรองรับโหมดกลางวัน/กลางคืน
  • ตัวเลือก MODE_NIGHT_AUTO_BATTERY ใหม่สำหรับโหมดกลางวัน/กลางคืน
  • การปรับสีของ Drawable ใน AppCompatTextView
  • ตอนนี้คุณจัดสไตล์รายการเพิ่มเติมของแถบเครื่องมือด้วยรายการสถานะสีตามธีมได้แล้ว
  • ตอนนี้ไอคอนเมนูใช้สีที่อ้างอิงแอตทริบิวต์ธีมได้แล้ว
  • คุณตั้งค่าแอตทริบิวต์ app:menu ใหม่ในแถบเครื่องมือเพื่อให้เนื้อหาเมนูได้เมื่อสร้าง

แก้ไขข้อบกพร่อง

  • แก้ไขโหมดการปรับสีเริ่มต้นใน ImageView เวอร์ชัน 21
  • แก้ไขการปัดป๊อปอัปสปินเนอร์ไม่ถูกต้องเมื่อหมุนอุปกรณ์
  • ฟีเจอร์ "กลางวัน/กลางคืนแบบคงที่" ไม่สนใจ configChanges ในไฟล์ Manifest
  • แก้ไขการเปลี่ยนเป็น MODE_NIGHT_FOLLOW_SYSTEM ไม่ทำงาน (b/111345020)
  • แก้ไข WebView รีเซ็ตทรัพยากรโหมดกลางวัน/กลางคืน (b/37124582)

เวอร์ชัน 1.1.0-alpha02

7 กุมภาพันธ์ 2019

androidx.appcompat:appcompat 1.1.0-alpha02 ได้รับการปล่อยแล้ว

ฟีเจอร์ใหม่

  • แยกการจัดการทรัพยากรที่วาดได้เฉพาะแหล่งที่มาออกเป็นฮุก (aosp/870976)
  • อนุญาตให้แถบเครื่องมือ titleTextColor และ subtitleTextColor ใช้ ColorStateList และเพิ่ม ColorStateList ให้กับวิธีการ setTitleTextColor และ setSubtitleTextColor (aosp/867489)

แก้ไขข้อบกพร่อง

  • แก้ไข fontFamily ไม่ทํางานในเวอร์ชันก่อน API 24 (aosp/807054)
  • แก้ไขข้อบกพร่องที่ textFontWeight ไม่ทำงานเมื่อกิจกรรมขยายจาก AppCompatActivity (aosp/847640)
  • แก้ไขข้อบกพร่องที่ทำให้ข้อความชื่อในป๊อปอัปวิดเจ็ตสปินเนอร์ (เมื่อใช้โหมดกล่องโต้ตอบ) ไม่ใช้แบบอักษรที่ระบุใน fontFamily (aosp/789994)
  • แก้ไขข้อบกพร่องที่ทำให้วิดเจ็ต AppCompatCheckBox และ AppCompatRadioButton เปลี่ยนสีของพื้นหลังไม่ได้ (aosp/825160)
  • แก้ไขข้อบกพร่องที่ AppCompat ไม่ลบล้าง android: list styles (aosp/862350)

เวอร์ชัน 1.1.0-alpha01

3 ธันวาคม 2018

ฟีเจอร์ใหม่

  • ตอนนี้ AppCompatTextView รองรับ app:drawableLeftCompat, app:drawableTopCompat, app:drawableRightCompat, app:drawableBottomCompat, app:drawableStartCompat และ app:drawableEndCompat องค์ประกอบภาพแบบคอมโพเนนต์แล้ว ซึ่งรองรับประเภทองค์ประกอบภาพที่พอร์ตย้อนกลับ เช่น VectorDrawableCompat

  • ตอนนี้รูปภาพที่วาดได้เริ่มต้นของ AppCompatCheckBox และ AppCompatRadioButton เคลื่อนไหวแล้วตรวจสอบการเปลี่ยนแปลงสถานะ

การเปลี่ยนแปลง API

  • aosp/740385: ตอนนี้ ActionBarOverlayLayout ใช้ NestedScrollingParent2 และ NestedScrollingParent3 ซึ่งช่วยให้สามารถอำนวยความสะดวกให้กับฟังก์ชันการทำงานล่าสุดในการเลื่อนแบบซ้อน 3 หากปัจจุบันโค้ดของนักพัฒนาแอปลบล้าง ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int) ก็มีความเป็นไปได้ว่าระบบจะไม่เรียกใช้โค้ดดังกล่าวอีกต่อไป และควรลบล้าง ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int, int, int[]) แทน

เวอร์ชัน 1.0.2

เวอร์ชัน 1.0.2

7 พฤศจิกายน 2018

การแก้ไขข้อบกพร่องของ core-1.0.1 และ appcompat-1.0.2

แก้ไขข้อบกพร่อง

  • แก้ไขข้อบกพร่องที่ PrecomputedTextCompat จะขัดข้องเมื่อใช้กับ RTL AppCompatTextView b/113070424

เวอร์ชัน 1.0.0

เวอร์ชัน 1.0.0

7 พฤศจิกายน 2018

ฟีเจอร์ใหม่

  • AnimatedStateListDrawableCompat แสดงการเปลี่ยนภาพเคลื่อนไหวระหว่างสถานะที่วาดได้