Wear Protolayout

  
ไลบรารีนี้อนุญาตให้กำหนดชุดเลย์เอาต์ UI และนิพจน์ที่ไม่ใช่ UI เพื่อแสดงผล/ประเมินบนแพลตฟอร์มระยะไกล
อัปเดตล่าสุด รุ่นที่เสถียร ตัวเลือกถอนการอ้างสิทธิ์ รุ่นเบต้า รุ่นอัลฟ่า
7 สิงหาคม 2024 1.2.0 - - -

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

หากต้องการเพิ่มทรัพยากร Dependency ของ Wear-Prolayout คุณต้องเพิ่มที่เก็บ Google Maven ไปยัง อ่านที่เก็บ Maven ของ Google เพื่อดูข้อมูลเพิ่มเติม

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

ดึงดูด

dependencies {
    // Use to implement support for Wear ProtoLayout Expressions
    implementation "androidx.wear.protolayout:protolayout-expression:1.2.0"

    // Use to implement support for Wear ProtoLayout
    implementation "androidx.wear.protolayout:protolayout:1.2.0"

    // Use to utilize components and layouts with Material design in your ProtoLayout
    implementation "androidx.wear.protolayout:protolayout-material:1.2.0"
}

Kotlin

dependencies {
    // Use to implement support for Wear ProtoLayout Expressions
    implementation("androidx.wear.protolayout:protolayout-expression:1.2.0")

    // Use to implement support for Wear ProtoLayout
    implementation("androidx.wear.protolayout:protolayout:1.2.0")

    // Use to utilize components and layouts with Material design in your ProtoLayout
    implementation("androidx.wear.protolayout:protolayout-material:1.2.0")
}

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

ความคิดเห็น

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

สร้างรายการใหม่

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

เวอร์ชัน 1.2

เวอร์ชัน 1.2.0

7 สิงหาคม 2024

ปล่อย androidx.wear.protolayout:protolayout-*:1.2.0 แล้ว เวอร์ชัน 1.2.0 มี ความมุ่งมั่นเหล่านี้

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

  • FontStyle ได้รับการอัปเดตให้รองรับแบบอักษรเพิ่มเติมสำหรับแกนตัวแปรและ API การเลือกแบบอักษรที่ดียิ่งขึ้นเพื่อรองรับแบบอักษร Flex ที่กำลังจะเปิดตัว
  • รองรับตัวปรับแต่งเพิ่มเติม
    • ตัวแก้ไขการเปลี่ยนรูปแบบเสนอการแปล การหมุน และการปรับขนาดโดยมีหรือไม่มีภาพเคลื่อนไหว
    • ระบุค่าที่แตกต่างกัน (แนวนอนและแนวตั้ง) สําหรับรัศมีของมุมแต่ละมุม
  • ปรับปรุงการเข้าถึงเป้าหมายการสัมผัสทั้งหมดให้ดีขึ้นโดยขยายพื้นที่ที่แตะได้ขององค์ประกอบที่ใช้ตัวแก้ไขที่คลิกได้ให้มีค่าอย่างน้อย 48dp คูณ 48dp
  • ปรับปรุง PrimaryLayout และ EdgeContentLayout ด้วยการเพิ่ม setResponsiveContentInsetEnabled เพื่อรองรับลักษณะการปรับเปลี่ยนตามอุปกรณ์ของเลย์เอาต์เหล่านี้ในหน้าจอขนาดต่างๆ และปรับปรุงความสอดคล้องกันของไทล์
  • ปรับปรุงการปรับขนาด/ไม่ปรับขนาดของ Material Text สำหรับการปรับขนาดแบบอักษรที่ไม่ใช่แบบเชิงเส้นของ Android 14
  • ปรับปรุงการรองรับทิศทางการจัดวาง RTL บนองค์ประกอบโค้งทั้งหมด

การเปลี่ยนแปลงเพิ่มเติม

เวอร์ชัน 1.2.0-rc01

24 กรกฎาคม 2024

ปล่อย androidx.wear.protolayout:protolayout-*:1.2.0-rc01 แล้ว เวอร์ชัน 1.2.0-rc01 มีคอมมิตเหล่านี้

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

  • เราได้แก้ไขชิป Material มาตรฐานเพื่อให้ใช้เป็นไอคอนได้ต่อเมื่อไม่มีการส่งป้ายกำกับหลักหรือป้ายกำกับรองเข้ามา (Iceef9)
  • เอกสารสำหรับเลย์เอาต์ของ Material ได้รับการอัปเดตให้รวมภาพจากหน้าที่เกี่ยวข้องเพื่อให้ทำความเข้าใจเลย์เอาต์ได้ง่ายขึ้น (I0256A)

เวอร์ชัน 1.2.0-beta01

10 กรกฎาคม 2024

ปล่อย androidx.wear.protolayout:protolayout-*:1.2.0-beta01 แล้ว เวอร์ชัน 1.2.0-beta01 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

Wear ProtoLayout รุ่น 1.2.0-beta01 ระบุว่าไลบรารีรุ่นนี้มีฟีเจอร์สมบูรณ์และ API ถูกล็อก (ยกเว้นที่ระบุว่าเป็นเวอร์ชันทดลอง) Wear ProtoLayout 1.2 มีฟังก์ชันและ API ใหม่ต่อไปนี้

  • อัปเดต FontStyle ให้มีการรองรับแบบอักษรเพิ่มเติมดังนี้
    • การตั้งค่ารูปแบบอักษรที่แตกต่างกัน เช่น FontSetting.weight และ FontSetting.width
    • การตั้งค่าความกว้างเดียวกันสำหรับอักขระตัวเลขทั้งหมด - ตัวเลขแบบตาราง (การตั้งค่าฟีเจอร์แบบอักษร FontSetting.tnum)
    • ปรับปรุง API การเลือกแบบอักษรเพื่อรองรับแบบอักษร Flex ที่กำลังจะเปิดตัว โดยการระบุชื่อชุดแบบอักษรที่ต้องการใช้
  • ขยายตัวแก้ไข Corner เพื่อรองรับการระบุ CornerRadius แต่ละรายการด้วยค่าแนวนอนและแนวตั้งแยกกัน เพื่อให้สามารถสร้างองค์ประกอบที่มีมุมไม่สมมาตรได้
  • เพิ่มการแปล การหมุน และการปรับขนาด LayoutElement ด้วยตัวแก้ไข Transformation ใหม่ การเปลี่ยนรูปแบบเหล่านี้สามารถทำให้เคลื่อนไหวได้โดยใช้ค่าไดนามิก
  • เพิ่ม setArcDirection ที่มีตัวเลือก Clockwise, CounterClockwise และ Normal ในองค์ประกอบโค้งทั้งหมด (Arc, ArcLine และ ArcText) เพื่อการรองรับที่ดียิ่งขึ้นในทิศทางการจัดวางที่แตกต่างกัน (เช่น LTR และ RTL)
  • ปรับปรุงการเข้าถึงเป้าหมายการสัมผัสทั้งหมดให้ดีขึ้นโดยขยายพื้นที่ที่แตะได้ขององค์ประกอบที่ใช้ตัวแก้ไข Clickable ให้มีค่าอย่างน้อย 48dp x 48dp
  • ปรับปรุง PrimaryLayout และ EdgeContentLayout ด้วยการเพิ่ม setResponsiveContentInsetEnabled เพื่อรองรับลักษณะการปรับเปลี่ยนตามอุปกรณ์ของเลย์เอาต์เหล่านี้ในหน้าจอขนาดต่างๆ และปรับปรุงความสอดคล้องกันของไทล์ เพิ่มคำเตือนโปรแกรมวิเคราะห์โค้ดเพื่อแนะนำการใช้งาน API เหล่านี้พร้อมการแก้ไขด่วน
  • ปรับปรุงการปรับขนาด/ไม่มีการปรับขนาดของ Material Text สำหรับการปรับขนาดแบบอักษรที่ไม่ใช่แบบเชิงเส้นของ Android 14

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

  • ชื่อชุดแบบอักษรเริ่มต้น (DEFAULT_SYSTEM_FONT) ถูกนำออกเนื่องจากบอกเป็นนัยว่าไม่ได้ใช้ preferredFontFamilies API (I39dab)
  • พารามิเตอร์ที่ส่งผ่านไปยัง FontSetting.width ควรเป็นค่าบวก (I1266F)

เวอร์ชัน 1.2.0-alpha05

26 มิถุนายน 2024

ปล่อย androidx.wear.protolayout:protolayout-*:1.2.0-alpha05 แล้ว เวอร์ชัน 1.2.0-alpha05 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มเมธอด hasText ลงใน Material.CompactChip เพื่อตรวจสอบว่าได้ตั้งค่าเนื้อหาข้อความแล้วหรือไม่ (I6e8fc)

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

  • ย้ายค่าคงที่ FontFamily ไปอยู่ใน FontStyle แทนคลาส Builder (I06ced)
  • อัปเดต API FontSetting.weight และ FontSetting.width เพื่อรวมคำอธิบายประกอบช่วงและเปลี่ยนพารามิเตอร์ของน้ำหนักเป็น int (Ia726C)

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

  • ข้อความที่รองรับการปรับขนาดในไลบรารี Material ทํางานได้อย่างถูกต้องกับการปรับขนาดแบบอักษรที่ไม่ใช่แบบเชิงเส้นของ Android 14 แล้ว (I6601e)

เวอร์ชัน 1.2.0-alpha04

29 พฤษภาคม 2024

ปล่อย androidx.wear.protolayout:protolayout-*:1.2.0-alpha04 แล้ว เวอร์ชัน 1.2.0-alpha04 มีคอมมิตเหล่านี้

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

  • เพิ่ม API มุมอสมมาตรเพื่อให้ระบุรัศมีของแต่ละมุมแยกกันได้ด้วยค่า 2 ค่า (Icbd69)
  • ขยาย API ของ FontSetting ให้ครอบคลุม:
    • การตั้งค่าฟีเจอร์แบบอักษร เช่น การตั้งค่าแบบอักษรให้เป็นตาราง (If12b7)
    • การตั้งค่ารูปแบบแบบอักษร เช่น การตั้งค่าความกว้างที่กำหนดเองสำหรับแบบอักษรที่ปรับเปลี่ยนได้ (I2b36d)
  • เพิ่ม API ชุดแบบอักษรไปยัง FontStyle เพื่อให้สามารถระบุรายการลำดับชุดแบบอักษรที่ควรใช้ (Iba9f5)
  • เปลี่ยนชื่อค่าคงที่สำหรับความสูงของช่องว่างระหว่างเนื้อหาและป้ายกำกับรองใน LayoutDefaults ของ Material ที่นำหน้าด้วยคำว่า "เนื้อหา Edge" ให้เป็นคำทั่วไปมากขึ้น เนื่องจากใช้ได้กับทั้ง PrimaryLayout และ EdgeContentLayout (I4dc32)

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

  • เปลี่ยนชื่อแกนแบบอักษรของตัวแปรจาก axisName เป็น axisTag แล้ว (I02ba3)

เวอร์ชัน 1.2.0-alpha03

14 พฤษภาคม 2024

ปล่อย androidx.wear.protolayout:protolayout-*:1.2.0-alpha03 แล้ว เวอร์ชัน 1.2.0-alpha03 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่ม API สำหรับการตั้งค่าน้ำหนักที่กำหนดเองสำหรับ FontStyle (I7390A)

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

  • แก้ไขความล้มเหลวใน getTouchDelegateInfo เนื่องจากแมปเป้าหมายว่างเปล่า (I2accf)

เวอร์ชัน 1.2.0-alpha02

1 พฤษภาคม 2024

ปล่อย androidx.wear.protolayout:protolayout-*:1.2.0-alpha02 แล้ว เวอร์ชัน 1.2.0-alpha02 มีคอมมิตเหล่านี้

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

  • เราได้เพิ่มการสนับสนุนสำหรับการปิดใช้งานการตอบสนองแบบคลื่นในองค์ประกอบที่คลิกได้แต่ละรายการ (If1ede)
  • นํา API สําหรับการเปลี่ยนรูปแบบออกจาก ArcModifiers แล้วเนื่องจากไม่รองรับฟีเจอร์นั้น (Ic0827)
  • ขณะนี้ ArcDirectionProp Builder ต้องการค่าในเครื่องมือสร้าง (I76ada)
  • เมธอด PlatformDataValues.Builder.putAll จะอนุญาตให้รวม PlatformDataValue รายการหนึ่งเป็นอีกรายการได้ (I50ba3)
  • Text#setIsScalable เปลี่ยนชื่อเป็น Text#setScalable แล้ว (If920e)
  • Material Text สามารถกำหนดว่าจะใช้ขนาดที่รองรับการปรับขนาด (ขยายเมื่อขนาดแบบอักษรของผู้ใช้มีการเปลี่ยนแปลง) หรือไม่ (Ibc849)
  • เราได้เพิ่มตัวเลือกในการตั้งค่าคำอธิบายเนื้อหาเป็น TitleChip (I5d21f)
  • แก้ไข CompactChip ให้ทำงานอย่างถูกต้องกับไอคอนเท่านั้น และอัปเดต API เพื่ออนุญาตตัวเลือกนี้ (I6589e)

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

  • แก้ไขปัญหาข้อมูลแพลตฟอร์มที่อาจซ้ำกันระหว่างการเริ่มต้น (Iba0fd)
  • แนะนำ Getter ใหม่สำหรับ DynamicDataNode เพื่อเรียกข้อมูลต้นทุนโหนด ต้นทุนจะใช้เมื่อได้โควต้าโหนดแบบไดนามิก ปัจจุบันโหนดที่มีค่าคงที่จะมีค่าใช้จ่ายเป็น 0 ส่วนโหนดอื่นๆ ทั้งหมดจะมีค่าใช้จ่ายเท่ากับ 1 (Ia33e1)
  • นำตรรกะการนับออกจาก NO_OP_QUOTA_MANAGER (Ib50b8)
  • เราได้เพิ่มกฎ Lint เพื่อรายงานคำเตือนเมื่อมีการใช้ PrimaryLayout โดยไม่มี setResponsiveContentInsetEnabled และทำการแก้ไขอย่างรวดเร็ว (I12025)
  • โหนดของนิพจน์แบบไดนามิกมีขีดจำกัด (Iffae8)

เวอร์ชัน 1.2.0-alpha01

6 มีนาคม 2024

ปล่อย androidx.wear.protolayout:protolayout-*:1.2.0-alpha01 แล้ว เวอร์ชัน 1.2.0-alpha01 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ตอนนี้องค์ประกอบ ProtoLayout Arc มีตัวเลือกในการเพิ่ม ArcDirection (Clockwise, Counterclockwise หรือ Normal) แล้ว การเพิ่มลักษณะการทำงานนี้ใน Arc, ArcLine หรือ ArcText จะแก้ไขลักษณะการทำงานในเลย์เอาต์ RTL (I90699)
  • EdgeContentLayout ได้รับการอัปเดตด้วยตัวตั้งค่า setResponsiveContentInsetEnabled ใหม่ เพื่อให้สอดคล้องมากขึ้นกับหลักเกณฑ์ UX และความสอดคล้องในไทล์ โดยการใส่ป้ายกำกับหลักไว้ที่ตำแหน่งคงที่ที่ด้านบนและส่วนที่ตอบสนองสำหรับป้ายกำกับ (I60175)
  • เราได้เพิ่ม PrimaryLayout.setResponsiveContentInsetEnabled ที่เพิ่มส่วนที่ปรับเปลี่ยนตามอุปกรณ์ลงในป้ายกำกับหลัก ป้ายกำกับรอง และชิปด้านล่างในเลย์เอาต์นี้ เพื่อหลีกเลี่ยงไม่ให้เนื้อหาหลุดออกจากขอบหน้าจอ (I0c457)
  • เพิ่มวิธีการนำขอบด้านนอกออกจาก CircularProgressIndicator เพื่อที่จะใช้เป็นคอมโพเนนต์ที่เล็กลงได้ (I55c06)

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

  • ขณะนี้ตัวแสดงผลการ์ดจะไม่รวมระยะห่างจากขอบของแบบอักษรในองค์ประกอบข้อความทั้งหมดโดยค่าเริ่มต้น โดยไม่มีตัวเลือกในการรวม (I3e300)

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

  • แก้ปัญหาการจัดข้อความเมื่อมีการใช้จุดไข่ปลา ระยะห่างระหว่างตัวอักษร และการจัดกึ่งกลางในข้อความทั้งหมด (I716c7)
  • เพิ่มวิธีแก้ปัญหาเบื้องต้นสำหรับปัญหาการวาดเส้นโค้งสกีa (I08F09)
  • แก้ไขทิศทางการวาดของ ArcLine สำหรับเลย์เอาต์ RTL (I6C141)

เวอร์ชัน 1.1

เวอร์ชัน 1.1.0

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

ปล่อย androidx.wear.protolayout:protolayout-*:1.1.0 แล้ว เวอร์ชัน 1.1.0 มีคอมมิตเหล่านี้

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

  • รองรับการไล่ระดับสีและความยาวที่ดีกว่า 360 องศาใน ArcLine
  • การจัดรูปแบบวันที่และเวลารองรับเขตเวลาที่ต่างกันสำหรับข้อมูลแบบไดนามิกประเภทต่างๆ
  • ตัวเลือกการปรับขนาดข้อความอัตโนมัติและการใช้จุดไข่ปลาที่ดีขึ้นเพื่อจัดการกับข้อความที่ถูกตัด
  • Spacer รองรับขนาดเมื่อขยายพร้อมตัวเลือกน้ำหนัก
  • คำอธิบายประกอบข้อกำหนดเวอร์ชันสคีมาสำหรับ API ของ ProtoLayout ทั้งหมด
  • พื้นที่เป้าหมายขยายสำหรับองค์ประกอบ Clickable ใดก็ตามเป็น 48 dp x 48 dp เพื่อให้เป็นไปตามข้อกำหนดการช่วยเหลือพิเศษ
  • ระยะห่างจากขอบของแบบอักษรจะปิดอยู่โดยค่าเริ่มต้น และเป็นลักษณะการทำงานเดียวในองค์ประกอบข้อความและองค์ประกอบ Material ทั้งหมดที่มีข้อความ

การเปลี่ยนแปลงเพิ่มเติม

เวอร์ชัน 1.1.0-rc01

24 มกราคม 2024

ปล่อย androidx.wear.protolayout:protolayout-*:1.1.0-rc01 แล้ว เวอร์ชัน 1.1.0-rc01 มีคอมมิตเหล่านี้

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

  • PlatformTimeUpdateNotifierImpl ขีดออกทันทีหลังจากเปิดใช้การอัปเดต (I77145)
  • CircularProgressIndicator ได้รับการแก้ไขสำหรับรูปแบบ RTL แล้ว จากนี้ไป จะเป็นการหมุนตามเข็มนาฬิกาในทุกกรณี (I95ee3)
  • เพิ่มวิธีแก้ปัญหาเบื้องต้นสำหรับปัญหาการวาดเส้นโค้งสกีa (I08F09)

เวอร์ชัน 1.1.0-beta01

10 มกราคม 2024

ปล่อย androidx.wear.protolayout:protolayout-*:1.1.0-beta01 แล้ว เวอร์ชัน 1.1.0-beta01 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

Wear ProtoLayout รุ่น 1.1.0-beta01 ระบุว่าไลบรารีรุ่นนี้มีฟีเจอร์สมบูรณ์และ API ถูกล็อก (ยกเว้นที่ระบุว่าเป็นเวอร์ชันทดลอง) Wear ProtoLayout 1.1 มีฟังก์ชันและ API ใหม่ต่อไปนี้

  • ตอนนี้ ArcLine รองรับการไล่ระดับสีด้วยการเพิ่ม Brush ด้วย SweepGradient และมีเงาบนฝา เพื่อแสดงความยาวที่ใหญ่กว่า 360 องศาได้ดียิ่งขึ้น โดยการเพิ่ม Shadow ใน StrokeCap ที่มีอยู่
  • DynamicInstant รองรับการจัดรูปแบบวันที่และเวลาแบบแบ่งโซน DynamicInstant และ DynamicDuration สามารถใช้เป็นประเภทข้อมูลสถานะหรือแพลตฟอร์มได้
  • ฟีเจอร์การปรับขนาดอัตโนมัติสำหรับขนาดข้อความที่อนุญาตให้ตั้งค่าขนาดเป็น FontStyle.setSizes ได้ โดยที่ขนาดข้อความจะปรับสัดส่วนโดยอัตโนมัติตามพื้นที่ว่างภายในไฟล์ระดับบน นอกจากนี้ เรายังปรับปรุงตัวเลือกการใช้จุดไข่ปลาสำหรับข้อความที่มีส่วนเกินโดยการเพิ่ม TEXT_OVERFLOW_ELLIPSIZE และเลิกใช้งาน TEXT_OVERFLOW_ELLIPSIZE_END
  • Spacer รองรับการขยายขนาดที่มีตัวเลือกน้ำหนักแล้ว สำหรับอาคาร ExpandedDimensionProp เราได้เพิ่มเมธอดตัวช่วย DimensionBuilders.weight
  • รองรับการซ่อนและเลิกซ่อนองค์ประกอบเลย์เอาต์แบบไดนามิกด้วย Modifier.visible ซึ่งรวมถึงการมีค่าแบบไดนามิกใน BoolProp
  • ตอนนี้ API ของ ProtoLayout ทั้งหมดมีคำอธิบายประกอบข้อกำหนดของเวอร์ชันสคีมา และสามารถตรวจสอบเวอร์ชันได้ก่อนที่จะเรียกใช้ API ที่ใหม่กว่า
  • ตอนนี้ทุกองค์ประกอบที่มี Clickable จะขยายพื้นที่เป้าหมายเป็น 48x48 เป็นอย่างน้อยในตัวแสดงผลเพื่อรองรับข้อกําหนดการช่วยเหลือพิเศษได้ดีขึ้น
  • หลังจากคอมโพเนนต์เนื้อหาอื่นๆ และการริเริ่มการเขียนแล้ว เราได้ปิดระยะห่างจากขอบของแบบอักษรโดยค่าเริ่มต้นในองค์ประกอบ Text ทั้งหมด รวมถึงได้นำ AndroidTextStyle และผู้ตั้งค่าที่เกี่ยวข้องออกจาก API สาธารณะแล้ว ด้วยการแก้ไขข้อบกพร่องต่อไปนี้
  • เพิ่มตัวตั้งค่าสำหรับการวางตำแหน่งเนื้อหาขอบใน EdgeContentLayout เพื่อให้จัดตำแหน่งก่อนเนื้อหาอื่นๆ ได้
  • การแสดงข้อผิดพลาดอย่างสม่ำเสมอเมื่อพบค่า enum ที่ไม่รู้จัก
  • ทำให้ผลลัพธ์ของนิพจน์เป็นโมฆะเมื่อให้ค่าตัวเลขที่ไม่ถูกต้อง (NaN หรืออนันต์) หรือแสดง ArithmeticException

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

  • อัปเดตเป็น SweepGradient API เพื่ออนุญาตให้ยอมรับสีหรือ ColorStops ในเครื่องมือสร้าง (I6676F)

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

  • การเพิ่ม API แบบจำกัดและการรองรับตัวแสดงผลสำหรับการตั้งค่าทิศทางการวาดองค์ประกอบโค้ง (Idef5a)
  • RoundMode จะมีค่าเริ่มต้นเป็น Floor ใน FloatToInt32Node เมื่อไม่ระบุ โหนดจะยังคงมีการส่งข้อยกเว้นหากไม่รู้จัก RoundMode ที่ระบุ (I1b2d8)

เวอร์ชัน 1.1.0-alpha04

13 ธันวาคม 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.1.0-alpha04 แล้ว เวอร์ชัน 1.1.0-alpha04 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • คลาส VersionInfo ไม่ได้ใช้อินเทอร์เฟซ Comparable (I8d13C)
  • โหมดแสดงภาพรองรับตัวเลือก TEXT_OVERFLOW_ELLIPSIZE แล้ว (I7f085)

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

  • เลิกใช้งานตัวเลือกรายการเพิ่มเติมของข้อความ TEXT_OVERFLOW_ELLIPSIZE_END แล้ว โปรดใช้ API ใหม่ TEXT_OVERFLOW_ELLIPSIZE ที่มีลักษณะการทำงานคล้ายกันมาก (I822d8)
  • หลังจากคอมโพเนนต์เนื้อหาอื่นๆ และการริเริ่มการเขียนแล้ว เราได้ปิดระยะห่างจากขอบของแบบอักษรโดยค่าเริ่มต้นในองค์ประกอบข้อความทั้งหมด รวมถึงได้นำ AndroidTextStyle และผู้ตั้งค่าที่เกี่ยวข้องออกจาก API สาธารณะแล้ว (I79094, Ib0b03, I32959, Iaf7d5, Ifa298, I0a4ae, Ida9d3)
  • Modifier.hidden แทนที่ด้วย Modifier.visible (I56902)
  • FontStyle#setSizes ยอมรับอาร์กิวเมนต์ int แทน SpProp แล้ว (I02b37)

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

  • ส่งข้อยกเว้นเมื่อพบค่า enum ที่ไม่ระบุหรือไม่รู้จัก (I9d2cf)
  • เปลี่ยนโครงสร้างภายในโค้ด DynamicTypeBindingRequest (I27b57)
  • ทำให้ผลลัพธ์ของนิพจน์เป็นโมฆะเมื่อให้ค่าตัวเลขที่ไม่ถูกต้อง (NaN หรืออนันต์) หรือแสดง ArithmeticException (I681ae)

เวอร์ชัน 1.1.0-alpha03

29 พฤศจิกายน 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.1.0-alpha03 แล้ว เวอร์ชัน 1.1.0-alpha03 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มการรองรับการทดลองสำหรับการซ่อน/เลิกซ่อนองค์ประกอบเลย์เอาต์แบบไดนามิก (I64a78)
  • เพิ่มการรองรับมูลค่าแบบไดนามิกให้กับ BoolProp (I2fe96)
  • เพิ่มคำอธิบายประกอบข้อกำหนดของเวอร์ชันสคีมาไปยัง ProtoLayout API (I0f03c)
  • การขยาย API ด้วยตัวเลือกใหม่ใน TextOverflow สำหรับการทำให้ข้อความเป็นจุดไข่ปลาในคอนเทนเนอร์ระดับบนสุดแบบคงที่ แม้ว่าจำนวนบรรทัดจะยังไม่ถึงขีดจำกัดก็ตาม (แต่มีพื้นที่ไม่เพียงพอสำหรับข้อความ) (I110a9)
  • เพิ่มเมธอดตัวช่วย DimensionBuilders.weight เพื่อสร้าง ExpandedDimensionProp ที่มีน้ำหนัก (I4f72b)
  • DynamicInstant และ DynamicDuration สามารถใช้เป็นประเภทข้อมูลสถานะหรือแพลตฟอร์มได้ (I6819f)

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

  • อัปเดต API เพื่อซ่อน DynamicZonedDateTime และย้ายการดำเนินการทั้งหมดไปยัง DyanamicInstant (I34b94)
  • ตอนนี้ Spacer รองรับขนาดที่ขยายสำหรับความกว้าง/ความสูงแล้ว (Ie7c94)
  • รองรับส่วนขยายพื้นที่เป้าหมายสำหรับคลิกใน Renderer (I39c79)

เวอร์ชัน 1.1.0-alpha02

15 พฤศจิกายน 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.1.0-alpha02 แล้ว เวอร์ชัน 1.1.0-alpha02 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มช่อง ArcLine StrokeCap Shadow ใน API แล้ว (I830ec)
  • การขยาย API เพื่อให้สามารถระบุความกว้างหรือความสูงของ Spacer เพื่อขยาย (I757ca)
  • เราได้เพิ่ม API ทดลองเพื่อปรับขนาดข้อความโดยอัตโนมัติตามพื้นที่ภายในข้อความหลัก (Ibbe63)
  • รองรับขนาดต่ำสุดที่คลิกได้ (I178e3)
  • เพิ่มการรองรับตัวแสดงผลสำหรับ StrokeCap Shadow (I48b17)
  • เพิ่มการรองรับตัวแสดงผลสำหรับการไล่ระดับสีกวาดใน ArcLine (I4d5bb)

เวอร์ชัน 1.1.0-alpha01

18 ตุลาคม 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.1.0-alpha01 แล้ว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มตัวเลือกแปรงใน Arcline พร้อมการรองรับSweepGradient (Ie7ce3)
  • เพิ่มการสนับสนุนสำหรับการจัดรูปแบบวันที่และเวลาที่มีการแบ่งโซน (Ibfae0)
  • จำเป็นต้องใช้ Protos และ Wrapper ของ Java สำหรับการจัดรูปแบบวันที่และเวลาที่มีการแบ่งโซน (I97126)
  • เพิ่ม Getters สำหรับการอ่านค่าที่จัดเก็บไว้ใน DynamicDataValue (Ie6cea)
  • เพิ่มตัวตั้งค่าสำหรับการวางตำแหน่งเนื้อหาขอบใน EdgeContentLayout เพื่อให้จัดตำแหน่งก่อนเนื้อหาอื่นๆ ได้ (Ie8e8a)

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

  • แก้ไขปัญหาเมื่อนิพจน์ที่มีการลงทะเบียนแหล่งข้อมูลหลายครั้งไม่ได้รับการอัปเดตโดยทันที (I8e1a8)
  • แก้ไขข้อบกพร่องในการจัดองค์ประกอบรากให้อยู่ตรงกลางระหว่างการอัปเดตความแตกต่าง (Ie48f7)
  • ระบบจะไม่เพิกเฉยต่อค่าข้อจำกัดเลย์เอาต์ที่ไม่ได้ตั้งค่า (หรือว่างเปล่า) อีกต่อไป (Ibc785)
  • ลดความล่าช้าระหว่างการแสดงเลย์เอาต์และการเริ่มต้นโหนดไปป์ไลน์ (I38d4e)

รุ่น 1.0

เวอร์ชัน 1.0.0

9 สิงหาคม 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0 แล้ว เวอร์ชัน 1.0.0 มีคอมมิตเหล่านี้

ฟีเจอร์หลักของ 1.0.0

ไลบรารี ProtoLayout เปิดตัว API สำหรับการสร้างเลย์เอาต์และนิพจน์ที่ใช้ได้ในแพลตฟอร์มต่างๆ ของ Wear OS ตัวอย่างเช่น ไลบรารีของการ์ดจะใช้ API เหล่านี้เพื่อรองรับการเชื่อมโยงข้อมูลของแพลตฟอร์ม (สำหรับการอัปเดตข้อมูลการ์ดที่เร็วขึ้น) และภาพเคลื่อนไหว

เวอร์ชัน 1.0.0-rc01

26 กรกฎาคม 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0-rc01 แล้ว เวอร์ชัน 1.0.0-rc01 มีคอมมิตเหล่านี้

  • หากต้องการย้ายข้อมูลจากการ์ดไปยัง ProtoLayout โปรดทำตามวิธีการที่นี่

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

  • เราได้นำเมธอด setLayoutConstraintForDynamicAnchorAngle และ getLayoutConstraintForDynamicAnchorAngle ออกจากองค์ประกอบ Arc แล้ว วิธีการเหล่านี้มีการเพิ่มโดยไม่ตั้งใจและไม่มีผลต่อเลย์เอาต์ที่ให้ไว้ (If7d01)
  • เราจำกัดความลึกสูงสุดที่เลย์เอาต์ของ ProtoLayout จะมีได้ไว้ที่ 30 ระดับที่ฝังไว้ใน LayoutElements (I8a74b)

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

  • เราได้เพิ่มการตรวจสอบที่จะแสดงผลหากมีการตั้งค่า DynamicColor สำหรับ SpanText (I0e5bc)
  • มีการอธิบายว่าหน่วยแหล่งข้อมูล DAILY_CALORIES เป็นกิโลแคลอรี (Iaa785)

เวอร์ชัน 1.0.0-beta01

21 มิถุนายน 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0-beta01 แล้ว เวอร์ชัน 1.0.0-beta01 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • อนุญาตให้ตั้งค่านาฬิกาสำหรับการทดสอบการเชื่อมโยงเวลา (I05622)

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

  • ตอนนี้ PlatformDataReceiver.onData() และ StateBuilders.Builder.addKeyToValueMapping ยอมรับการแมปแบบปลอดภัยของ DynamicDataKey กับ DynamicDataValue แทนคำทั่วไปที่ไม่ปลอดภัย ซึ่งหมายความว่าตอนนี้ DynamicDataValue จะพิมพ์ด้วย DynamicType ย้ายค่าคงที่ HEART_RATE_ACCURACY_X ไปยังรากของ PlatformHealthSources แล้ว เพื่อให้ตรงกับการจัดตำแหน่งค่าคงที่อื่นๆ ของ Android ขณะนี้มีการใช้ค่าคงที่ Int HEART_RATE_ACCURACY_X โดยตรงใน DynamicHeartRateAccuracy.constant() และ DynamicHeartRateAccuracy.dynamicDataValueOf() แทนค่าคงที่ (I82ff5)
  • ทำคลาส PlatformHealthSources.Constants ให้เป็นอินสแตนซ์ได้โดยไม่ได้ตั้งใจ แต่ปัญหานี้ได้รับการแก้ไขแล้ว (Icb849)
  • ตอนนี้ PlatformTimeUpdateNotifier#setReceiver ได้รับ Runnable แทนฟังก์ชัน Supplier และ Executor เพื่อแจ้งเตือน (I9d938)
  • เราได้เปลี่ยนประเภทพารามิเตอร์ใน PlatformTimeUpdateNotifier#setReceiver จาก Callable เป็น Supplier (I664bf)
  • ตอนนี้ CompactChip และ TitleChip รองรับการเพิ่มไอคอนแล้ว (I5a01e)

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

  • อัปเดตข้อความ Prop ด้วยช่องแบบไดนามิกเพื่อใช้ช่องเดียวแทน (I81739)
  • ใช้ตัวตั้งค่าซ้ำสำหรับโอเวอร์โหลดที่มีตัวตั้งค่า (Ied70c)
  • บันทึกลายนิ้วมือในตัวตั้งค่าที่มีโอเวอร์โหลด (I86ed2) ได้อย่างถูกต้อง

เวอร์ชัน 1.0.0-alpha11

7 มิถุนายน 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0-alpha11 แล้ว เวอร์ชัน 1.0.0-alpha11 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เราได้เพิ่ม PlatformDataKey สำหรับความแม่นยำของอัตราการเต้นของหัวใจ (I7f9b8)

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

  • เปลี่ยนชื่อ StateBuilders#getIdToValueMapping เป็น getKeyToValueMapping และเปลี่ยนประเภทการแสดงผลเป็น Map<<AppDataKey<?>,DynamicDataValue> (Iaa7ae)
  • กำหนด StateStore เป็นคลาสสุดท้าย (I408ca)
  • PlatformTimeUpdateNotifier ได้แทนที่อินเทอร์เฟซ TimeGateway ในไลบรารี protolayout-expression-pipeline แล้ว ซึ่งระบุความถี่ที่ต้องการสำหรับการอัปเดตข้อมูลเวลา (I60869)
  • เปลี่ยนชื่อ register/unregisterForData ใน PlatformDataProvider เป็น set/clearReceiver (I14b02)
  • ในข้อความสื่อการเรียนการสอนของชั้นเรียน getExcludeFontPadding ถูกเปลี่ยนชื่อเป็น hasExcludeFontPadding แล้ว (Iea01d)
  • เพิ่มตัวตั้งค่าสำหรับป้ายกำกับการจัดแนวอย่างลงตัวในคอมโพเนนต์ทั้งหมดของชิปแล้ว ตอนนี้ชิปทั้งหมดมีเป้าหมายที่แตะได้ขั้นต่ำแล้ว (I8ae92)
  • เปลี่ยนชื่อ LayoutDefaults#BUTTON_MAX_NUMBER เป็น MAX_BUTTONS แล้ว (I84788)
  • DAILY_DISTANCE เปลี่ยนชื่อเป็น DAILY_DISTANCE_M แล้ว (I4f758)

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

  • อัปเดตเอกสารประเภท Prop เพื่อชี้แจงเหตุผลที่มีการบังคับใช้มูลค่าคงที่ ระบุมูลค่าเริ่มต้นที่ใช้หากไม่มีการระบุมูลค่าคงที่ (I155aa)
  • เนมสเปซ PlatformDataKey ควรเป็นไปตามการตั้งชื่อแบบ Java (I47bda)

เวอร์ชัน 1.0.0-alpha10

24 พฤษภาคม 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0-alpha10 แล้ว เวอร์ชัน 1.0.0-alpha10 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่ม AppDataKey สำหรับการเข้าถึงสถานะที่พุชของแอป เพิ่ม PlatformDataKey สําหรับการเข้าถึงข้อมูลแพลตฟอร์ม เพิ่มการรองรับเนมสเปซใน StateStore (I7985e)
  • สนับสนุนการดำเนินการ Equal และ NotEqual สำหรับ DynamicBool (I6a0c1)

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

  • ชั้นเรียน FontStyles สิ้นสุดแล้ว (Iaa2ea)
  • LayoutElementBuilders#FontStyles เลิกใช้งานแล้ว โปรดใช้ androidx.wear.protolayout.Typography หรือสร้าง FontStyle ของคุณเอง (Ic929b)
  • ซ่อนอินเทอร์เฟซที่ฝัง Action#Builder จากอินเทอร์เฟซ Action ชั้นเรียน LoadAction และ LaunchAction ได้จัดเตรียมบริการเครื่องมือสร้างไว้ให้แล้ว (I1d70C)
  • อนุญาตให้ใช้ DynamicFloat กับ FloatProp โปรดทราบว่า FloatProp ไม่จำเป็นต้องใช้ข้อจำกัดเลย์เอาต์ เนื่องจากไม่ได้ใช้เป็นอุปกรณ์เสริมที่เปลี่ยนเลย์เอาต์ (I286ac)
  • ระบบนำการดำเนินการ LoalAction และ SetStateAction ออกแล้วเนื่องจากยังไม่รองรับ (I5d6a6)
  • เพิ่มการรองรับรูปแบบ ARGB_8888 สำหรับทรัพยากรรูปภาพในบรรทัด (I8a07C)
  • เปลี่ยนชื่อ StateEntryValue เป็น DynamicDataValue และอัปเดต APIS สถานะเพื่อใช้ DynamicDataKey (If1c01)
  • เราจะจำกัดจำนวนรายการที่อนุญาตใน StateStore เพื่อให้มั่นใจว่าการใช้งานหน่วยความจำและเวลาอัปเดตสถานะมีการควบคุมและควบคุมอินสแตนซ์แต่ละรายการของ StateStore เป็นอย่างดี ดังนั้น นักพัฒนาซอฟต์แวร์ต้องตรวจสอบว่าตนเองมีรายการไม่เกิน MAX_STATE_ENTRY_COUNT รายการในแผนที่ มิฉะนั้นจะได้รับ IllegalStateException เมื่อสร้างหรืออัปเดต StateStore (อีแบดb3)
  • ซ่อนชั้นเรียน OnLoadTrigger และ OnConditionMetTrigger และเปลี่ยนชื่อ setTrigger เป็น setCondition สำหรับ OnConditionMetTrigger (Ibf629)
  • ตัวแสดงผล ProtoLayout จะไม่รองรับฟีเจอร์ทั้งชุดในทรัพยากร AnimatedVectorDrawable เนื่องด้วยเหตุผลด้านประสิทธิภาพและความเข้ากันได้ เรากำลังทำเครื่องหมาย API เหล่านั้นว่าเป็นเวอร์ชันทดลองจนกว่าจะระบุชุดที่รองรับได้ (Ic6daf)
  • เพิ่มประเภทแบบไดนามิกสำหรับระยะทางรายวัน แคลอรี่รายวัน และราคาพื้นรายวัน ตอนนี้คีย์สำหรับแหล่งที่มาของประสิทธิภาพของแพลตฟอร์มอยู่ภายใต้ PlatformHealthSources.Keys (Ib7637)
  • เมธอด Easing.cubicBezier จะแทนที่ CubicBezierEasing.Builder เมื่อนำคลาส EasingFunction ออก และค่าคงที่การค่อยๆ เปลี่ยนจากคลาสดังกล่าวจะเข้าถึงได้โดยตรงจากอินเทอร์เฟซ Easing นอกจากนี้ setInfiniteRepeatable ยังแทนที่ด้วย INFINITE_REPEATABLE_WITH_RESTART และ INFINITE_REPEATABLE_WITH_REVERSE (Ib41e7)
  • ใช้ PlatformDataProvider เพื่อระบุอัตราการเต้นของหัวใจและจํานวนก้าวในแต่ละวัน นำอินเทอร์เฟซ SensorGateway ออกจาก API สาธารณะแล้ว (I55b84)
  • เพิ่ม PlatformDataProvider และอัปเดต StateStore เพื่อลงทะเบียนกับ PlatformDataProvider เมื่อโหนดจากไปป์ไลน์นิพจน์ต้องใช้คีย์ที่รองรับของผู้ให้บริการ (Ib616a)
  • SensorGateway ไม่ได้อยู่ในรูปแบบ Closeable แล้วเนื่องจากไม่มีสถานะใดๆ อีกต่อไป (I6b4f7)
  • อนุญาตให้ใช้ FloatProp กับ DynamicFloat สำหรับความคืบหน้าใน CircularProgressIndicator โหมดนี้รองรับโหมดแสดงภาพที่รองรับเวอร์ชัน 1.2 โหมดแสดงภาพเก่าจะใช้ staticValue เป็นโหมดสำรอง หากกำหนดไว้ มิฉะนั้นจะเป็น 0 (I0d91b)
  • มีการเปลี่ยนค่าคงที่ MultiButtonLayout เป็นคลาส LayoutDefaults.MultiButtonLayoutDefaults ซึ่งตอนนี้มีค่าสำหรับขนาดปุ่มโดยขึ้นอยู่กับจำนวนปุ่มในเลย์เอาต์ (I13973)
  • สนับสนุนการใช้ StringProp กับ DynamicString ในข้อความ Material โหมดนี้รองรับโหมดแสดงภาพที่รองรับเวอร์ชัน 1.2 โหมดแสดงภาพเก่าจะสำรองเป็นค่าคงที่ที่ให้ไว้ อัปเดตประเภทการคืนสินค้า Text#getText จาก String เป็น StringProp (I7275B)

เวอร์ชัน 1.0.0-alpha09

10 พฤษภาคม 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0-alpha09 แล้ว เวอร์ชัน 1.0.0-alpha09 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เราได้เพิ่มองค์ประกอบการออกแบบส่วนขยายรุ่นทดลอง โปรดทราบว่าตัวเลือกนี้ใช้ไม่ได้โดยค่าเริ่มต้น และต้องใช้ส่วนขยายตัวแสดงผลที่เข้าใจองค์ประกอบเลย์เอาต์ได้ (I6581D)
  • เพิ่มการสนับสนุน StrokeCap สำหรับ ArcLine (I94951)
  • เพิ่มการรองรับการดำเนินการทันทีแบบมีเงื่อนไข (I489a7)
  • เพิ่มการสนับสนุนสำหรับการดำเนินการระยะเวลาตามเงื่อนไข (Iab469)
  • เพิ่มการรองรับการสร้างระยะเวลาจากวินาที (Ib5fa1)

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

  • นำเมธอด enable/disablePlatformSource รายการออกจาก DynamicTypeEvaluator แล้ว ผู้โทรควรเป็นผู้รับผิดชอบการอัปเดต (I78c6d)
  • อนุญาตการจำกัดขนาดของประเภทข้อมูลที่ผูกไว้ (Ie2966)
  • เพิ่มการรองรับคำอธิบายเนื้อหาแบบไดนามิกใน protolayout-material (I62c8e)
  • ใช้ Long และ @IntRange สำหรับระยะเวลาและเวลาหน่วงใน AnimationParameters (I388b6)

เวอร์ชัน 1.0.0-alpha08

19 เมษายน 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0-alpha08 แล้ว เวอร์ชัน 1.0.0-alpha08 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • AndroidTextStyle ถูกเพิ่มใน LayoutElementBuilders (I8d967)
  • เราได้เพิ่มการรองรับการตั้งค่าการยกเว้นระยะห่างจากขอบแบบอักษรใน Material Text ของ ProtoLayout (I17f5d)
  • รองรับ ARGB_8888 สำหรับรูปภาพที่แทรกในบรรทัดแล้ว (I18c1e)
  • DynamicColor รองรับการดำเนินการ onCondition แล้ว (I10927)

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

  • รองรับระยะเวลาที่กำหนดเองสำหรับภาพเคลื่อนไหวแบบย้อนกลับ (I3251f)
  • เราได้เพิ่มตัวแก้ไข SemanticDescription แล้ว และ ContentDescription ไม่สามารถเชื่อมโยงได้ (I3f1d)
  • ตอนนี้ระบบจะแทนที่เมธอด DynamicBool.isFalse() ด้วย DynamicBool.negate() และนํา DynamicBool.isTrue() ออก นอกจากค่า NaN DynamicFloat และการจำกัด DynamicInt32 เป็น DynamicFloat แล้ว ตอนนี้จะแสดงผลลัพธ์แบบไดนามิกที่ไม่ถูกต้อง (I6ac1e)
  • ตอนนี้ตัวจัดรูปแบบ Int และ Float ใช้รูปแบบของเครื่องมือสร้างแล้ว (Ieb213)

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

  • นำค่าคงที่สำรองออกจากฟิลด์ที่เคลื่อนไหวได้แล้ว (Ifcb01)
  • นำ DynamicTypeValueReceiver#onPreUpdate ออกแล้ว (I2dc35)
  • ขณะนี้มีการกำหนดความยาวของสตริงในนิพจน์แบบไดนามิกแล้ว (I4c93)
  • ตอนนี้ทรัพยากร Dependency ของ Gradle ได้รับการตั้งค่าอย่างถูกต้องเป็น api แทน implementation แล้วเมื่อจำเป็น (I40503)

เวอร์ชัน 1.0.0-alpha07

5 เมษายน 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0-alpha07 แล้ว เวอร์ชัน 1.0.0-alpha07 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มการรองรับมูลค่าแบบไดนามิกให้กับ StringProp (I04342)
  • ทำเครื่องหมายองค์ประกอบการออกแบบที่เชื่อมโยงได้ (Ia110b)

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

  • sensorGateway#registerSensorGatewayConsumer จะใช้ประเภทข้อมูลเป็นพารามิเตอร์แทนเมธอดใน Consumer (Icf314)
  • เปลี่ยนชื่อ ObservableStateStore เป็น StateStore แล้ว (Ieb0e2)
  • เพิ่ม DynamicTypeEvaluator.Builder แทนอาร์กิวเมนต์ตัวสร้างเพื่ออนุญาตให้มีอาร์กิวเมนต์ที่ไม่บังคับมากขึ้น ซึ่งรวมถึง ObservableStateStore ซึ่งตอนนี้มีค่าเริ่มต้นเป็นที่เก็บที่ว่างเปล่า (I6F832)
  • เปลี่ยนลำดับของพารามิเตอร์ใน DynamicTypeEvaluator แล้ว (Ic1ba4)

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

  • เผยแพร่สัญญาณจากแหล่งที่มาเซ็นเซอร์แพลตฟอร์มไปยังโหนดดาวน์สตรีมอย่างถูกต้อง (I5a922)

เวอร์ชัน 1.0.0-alpha06

22 มีนาคม 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0-alpha06 แล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เราได้เพิ่ม API ทดลองสำหรับการใช้อัตราการเต้นของหัวใจและจำนวนก้าวรายวันในนิพจน์แบบไดนามิก (Ifd711)
  • เราได้เพิ่มการสนับสนุนสำหรับการหน่วงเวลาแบบย้อนกลับและไปข้างหน้าสำหรับภาพเคลื่อนไหว (Ic25f7)
  • เราได้เพิ่มการรองรับ DynamicColor ไปยังเส้นขอบและพื้นหลังแล้ว
  • เราได้เพิ่มการสนับสนุนมูลค่าแบบไดนามิกให้กับประเภทใน DimensionBuilder
  • เลย์เอาต์และคอมโพเนนต์จาก tiles-material จะย้ายไปที่ protolayout-material

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

  • LoadActionListener ถูกเพิ่มใน ProtoLayoutViewInstance (If7806)

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

  • เพิ่ม FloatNodesTest (Id7281) แล้ว
  • แก้ไขข้อขัดข้องในการแสดงผลเมื่อโหลดบิตแมปแบบมีโครงสร้างไม่ได้

เวอร์ชัน 1.0.0-alpha05

8 มีนาคม 2023

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0-alpha05 แล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เราได้เพิ่ม "การอัปเดตเนื้อหา" รุ่นทดลอง ไปยังออบเจ็กต์ Modifiers ภาพเคลื่อนไหวนี้จะทริกเกอร์เมื่อองค์ประกอบ (ที่มีตัวปรับนี้) หรือองค์ประกอบย่อยการเปลี่ยนแปลงระหว่างการอัปเดตเลย์เอาต์ (bd03e5d)

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

  • เราได้เพิ่ม forwardRepeatDelayMillis และ reverseRepeatDelayMillis ลงใน Repeatable แล้ว เรายังได้เปลี่ยนชื่อ delayMillis ใน AnimationSpec เป็น startDelayMillis (Ifb266) ด้วย
  • DynamicTypeEvaluator.bind เมธอดยอมรับผู้ดำเนินการแล้ว (I346ab)
  • เราได้เพิ่มเมธอด startEvaluation ลงใน BoundDynamicType เพื่อทริกเกอร์การประเมินหลังจากเชื่อมโยงประเภทแบบไดนามิกแล้ว (I19908)

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

  • วัตถุ Animator จะถูกนำมาใช้ซ้ำสำหรับภาพเคลื่อนไหวที่ตามมาขององค์ประกอบเดี่ยว (Ia3be9)

เวอร์ชัน 1.0.0-alpha04

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

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0-alpha04 แล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ตอนนี้ ObservableStateStore จะแจ้งให้ผู้ฟังทราบเมื่อมีการนำคีย์ออกด้วย
  • เราได้เพิ่มเวอร์ชันสคีมาของตัวแสดงผลและขนาดแบบอักษรลงใน DeviceParameters (ซึ่งสามารถใช้เพื่อสร้างเลย์เอาต์แบบมีเงื่อนไขตามเวอร์ชันและการตั้งค่าแบบอักษรต่างๆ)
  • เราได้เพิ่มการรองรับการทำให้ค่า DynamicInt32 เคลื่อนไหวได้ (I05485)
  • เราได้เพิ่มทริกเกอร์ OnLoad และ OnConditionalMet รายการ สามารถใช้เพื่อเริ่มภาพเคลื่อนไหวที่รองรับทริกเกอร์
  • เราได้เพิ่มน้ำหนักของเลย์เอาต์สำหรับขนาดที่ขยายและขนาดขั้นต่ำสำหรับขนาดที่ตัดขึ้นแล้ว
  • เราได้เพิ่มระยะเวลาและประเภทไดนามิกแบบทันที ค่าเหล่านี้สามารถใช้แสดงเวลาทันทีหรือระยะเวลาในนิพจน์แบบไดนามิก
  • เราได้เพิ่มการรองรับ AnimatedVectorDrawable และ SeekableAnimatedVectorDrawable เป็นทรัพยากรเลย์เอาต์แล้ว

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

  • ข้อมูลเซ็นเซอร์ต้องใช้ API 29 ขึ้นไป (I8099e)
  • เราได้เพิ่มวิธีการช่วย launchAction 2 วิธี (สำหรับการเปิดตัวกิจกรรม)

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

  • เปลี่ยนชื่อ set/getSpec เป็น set/getAnimationSpec ในภาพเคลื่อนไหวของไทล์ (I3d74b)

เวอร์ชัน 1.0.0-alpha03

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

ปล่อย androidx.wear.protolayout:protolayout-*:1.0.0-alpha03 แล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เราได้เพิ่ม toByteArray() และ fromByteArray() ลงใน "ประเภทไดนามิก" ในไลบรารี โปรโตคอลแบบเร่งด่วนแล้ว
  • เราได้เพิ่ม toString() ลงใน "ประเภทไดนามิก" ในไลบรารีโปรโตคอลนิพจน์
  • เราได้เพิ่มการสนับสนุนการประเมินสำหรับประเภทไดนามิก คลาส DynamicTypeEvaluator จากไลบรารี ได้ในแบบแผนของนิพจน์ (Protolayout-expression-pipeline) สามารถใช้เพื่อประเมิน (และรับค่าที่อัปเดตแล้ว) สำหรับประเภทไดนามิกที่สร้างขึ้นก่อนหน้านี้ (DynamicString, DynamicFloat, ...)
  • เมื่อเล่นภาพเคลื่อนไหวไม่ได้ (เนื่องจากผู้ประเมินปิดใช้หรือจำนวนภาพเคลื่อนไหวที่กำลังทำงานถึงขีดจำกัดที่กำหนดไว้) ระบบจะใช้ค่าคงที่ที่ตั้งไว้ในโหนดที่เคลื่อนไหวได้เพื่อแทนที่ภาพเคลื่อนไหว

เวอร์ชัน 1.0.0-alpha02

25 มกราคม 2023

ปล่อย androidx.wear.protolayout:protolayout:1.0.0-alpha02, androidx.wear.protolayout:protolayout-expression:1.0.0-alpha02 และ androidx.wear.protolayout:protolayout-proto:1.0.0-alpha02 แล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เครื่องมือสร้างเลย์เอาต์จาก androidx.wear.tiles:tiles จะย้ายไปที่ androidx.wear.protolayout:protolayout ระบบจะเลิกใช้งานแอปใน androidx.wear.tiles:tiles ในเวอร์ชันอัลฟ่ารุ่นถัดไป

เวอร์ชัน 1.0.0-alpha01

11 มกราคม 2023

ปล่อย androidx.wear.protolayout:protolayout-expression:1.0.0-alpha01 และ androidx.wear.protolayout:protolayout-proto:1.0.0-alpha01 แล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • รุ่นนี้มีไลบรารีใหม่ชื่อ "ProtoLayout Expression" สำหรับการสร้างนิพจน์จากตัวแปรแบบไดนามิก