wear protolayout
Bản cập nhật mới nhất | Bản phát hành ổn định | Bản phát hành dùng thử | Bản phát hành beta | Bản phát hành alpha |
---|---|---|---|---|
Ngày 24 tháng 9 năm 2025 | 1.3.0 | - | - | 1.4.0-alpha01 |
Khai báo phần phụ thuộc
Để thêm một phần phụ thuộc trên wear-protolayout, bạn phải thêm kho lưu trữ Maven của Google vào dự án. Hãy đọc nội dung Kho lưu trữ Maven của Google để biết thêm thông tin.
Thêm các phần phụ thuộc cho cấu phần phần mềm bạn cần trong tệp build.gradle
cho ứng dụng hoặc mô-đun:
Groovy
dependencies { // Use to implement support for Wear ProtoLayout Expressions implementation "androidx.wear.protolayout:protolayout-expression:1.3.0" // Use to implement support for Wear ProtoLayout implementation "androidx.wear.protolayout:protolayout:1.3.0" // Use to utilize components and layouts with Material design in your ProtoLayout implementation "androidx.wear.protolayout:protolayout-material:1.3.0" }
Kotlin
dependencies { // Use to implement support for Wear ProtoLayout Expressions implementation("androidx.wear.protolayout:protolayout-expression:1.3.0") // Use to implement support for Wear ProtoLayout implementation("androidx.wear.protolayout:protolayout:1.3.0") // Use to utilize components and layouts with Material design in your ProtoLayout implementation("androidx.wear.protolayout:protolayout-material:1.3.0") }
Để biết thêm thông tin về các phần phụ thuộc, hãy xem bài viết Thêm phần phụ thuộc vào bản dựng.
Ý kiến phản hồi
Ý kiến phản hồi của bạn có thể giúp chúng tôi cải thiện Jetpack. Hãy cho chúng tôi biết nếu bạn phát hiện lỗi mới hoặc có ý tưởng cải thiện thư viện này. Vui lòng xem các lỗi hiện có trong thư viện này trước khi báo một lỗi mới. Bạn có thể thêm lượt bình chọn cho lỗi hiện có bằng cách nhấp vào nút dấu sao.
Xem tài liệu về Công cụ theo dõi lỗi để biết thêm thông tin.
Phiên bản 1.4
Phiên bản 1.4.0-alpha01
Ngày 24 tháng 9 năm 2025
Phát hành androidx.wear.protolayout:protolayout-*:1.4.0-alpha01
. Phiên bản 1.4.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Thêm phương thức hỗ trợ cho
LayoutModifier
giúp một phần tử mờ dần khi ô trở nên hiển thị. (I38531, b/390345969) - Đã thêm
materialScopeWithResources
để hỗ trợ khái niệm M3MaterialScope
, đồng thời xử lý việc đăng ký tài nguyên tự động. Trong đó, đã thêm các phương thức trợ giúp mới cho hình ảnh (backgroundImage
avatarImage
và biểu tượng) giúp bạn không cần đăng ký tài nguyên theo cách thủ công trongonTileResourceRequest
khi sử dụng. (I525bd, b/428692714) ProtoLayout
Các trợ giúp Kotlin choImage
vàImageResources
để sử dụng vớiProtoLayoutScope
và tính năng đăng ký tài nguyên tự động. (Iada82, b/430584304)- Thêm phương thức getter cho số lượng thuộc tính Lottie được phép tuỳ chỉnh trong một ảnh động Lottie. (I73733, b/436532706)
- Thêm API vào
AndroidLottieResourceByResId
để cho phép tuỳ chỉnh ảnh động Lottie thông qua các thuộc tính và thêm API để tạo thuộc tính cho khe tạo giao diện bằng mã nhận dạng khe theo màu sắc đã chỉ định. (I301b3, b/423581481) - Thêm các API nhà cung cấp để chấp nhận
PendingIntent
làm thao tác nhấp (I01978, b/433802488) - Thêm API mới trong
Image.Builder
–setImageResource
để đặt trực tiếp đối tượng tài nguyên cho Hình ảnh trongonTileRequest
mà không cần đăng ký đối tượng đó trong quá trình ánh xạ trongonTileResourcesRequest
. (Ifa69a, b/428693523) - Đã thêm khái niệm
ProtoLayoutScope
để chuẩn bị cho việc xử lý tài nguyên tốt hơn trong Tiles. (I132ce, b/428692423) ProtoLayout
Material3MaterialScope
hiện hiển thị trườngContext
ở chế độ công khai để sử dụng trong các phương thức trong phạm vi mà không cần truyền trường này. (I0e5cc, b/414559956)- Công khai các API ngữ nghĩa tiêu đề (I75299, b/413653475)
- Hiển thị các hằng số
ARC_DIRECTION_*
ở chế độ công khai để sử dụng trongArc/ArcLine/ArcText/DashedArcLine
. (I83959, b/427556439)
Thay đổi về API
- Chúng tôi đã ngừng sử dụng các phương thức
Image.Builder()
vàImage.Builder.setResourceId
để chuyển sang API đăng ký tài nguyên tự động mới, có trong các APIImage.Builder(ProtoLayoutScope)
vàImage.Builder.setImageResource
. Các API này giúp bạn không cần ghi đèonTileResourcesRequest
. (I7bfe6, b/432758526) - Di chuyển các API để tạo
ProtoLayoutScope
từ hạn chế sang công khai. Tuy nhiên, bạn không nên dùng các lệnh gọi này vì hệ thống đã xử lý những lệnh gọi đó. (I1d8e8, b/432758251)
Sửa lỗi
- Thêm quy trình triển khai để hỗ trợ
PendingIntent
trongProtoTiles
(I38167, b/430610429) - Thêm phương thức
invalidateLayout
. (Ief898) - Di chuyển minSdk mặc định từ API 21 sang API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
ImageResource
hiện có các phương thứchashCode
vàequals
. (I650ee, b/428692423, b/428693523)- Thêm thông báo proto mới
PendingIntentAction
và trình tạo trình bao bọc của thông báo đó (Ie2aca, b/427643502) - Giảm tần suất tạo thực thể
ZoneId
. (I284d3) - Áp dụng nội dung mô tả mặc định cho một khe
textButton
. (I0dc8a, b/415001534) - Sửa các phép tính để điều chỉnh số dòng tối đa ở phía trình kết xuất. (I933bc, b/414353620)
Phiên bản 1.3
Phiên bản 1.3.0
Ngày 4 tháng 6 năm 2025
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0
. Phiên bản 1.3.0 bao gồm các thay đổi sau.
Những thay đổi quan trọng kể từ phiên bản 1.2.0
- Thiết kế Material 3 xuất hiện trên đồng hồ, với các thành phần và bố cục được tối ưu hoá cho màn hình tròn và có thể điều chỉnh kích thước phù hợp từ màn hình nhỏ đến màn hình lớn
- Trong đó có thư viện
protolayout-material3
chỉ dành cho Kotlin với nhiều API tương tự như Compose cho các thành phần và tính năng sau: - Giao diện màu động lấy từ hệ thống và mặt đồng hồ có giao diện Material3 mới nhất cho màu sắc, hình dạng và kiểu chữ
MaterialScope
để xử lý tất cả các giá trị mặc định có ý kiến và tuỳ chỉnh dễ dàng hơniconEdgeButton
,textEdgeButton
iconButton
,textButton
,button
,imageButton
,avatarButton
,compactButton
titleCard
,appCard
,graphicDataCard
,iconDataCard
,textDataCard
circularProgressIndicator
,segmentedCircularProgressIndicator
primaryLayout
,buttonGroup
- Tất cả các thành phần đều hoạt động ở mọi cấp độ SDK và phiên bản Trình kết xuất
ProtoLayout
, cung cấp các giải pháp dự phòng hợp lý khi có thể
- Trong đó có thư viện
- Các API tương thích hơn với Kotlin và tương tự như Compose cho các phần tử ProtoLayout cơ bản
LayoutModifier
có khả năng thêm hầu hết các đối tượng sửa đổi dưới dạng các hàm được liên kết (padding
,contentDescription
(bao gồm cảclearSemantics
),background
,clip
,opacity
, v.v.), có thể chuyển đổi thành đối tượngModifiers
hiện cóLayoutColors
vàLayoutString
dưới dạng các loại có khả năng hỗ trợ dễ dàng hơn cho việc sử dụng các trường và ràng buộc độngtext
vàfontStyle
- hỗ trợ bản đồ tốt hơn cho
StateBuilder
, bao gồm cảDynamicDataMap
và các phương thức của nhà máy nhưintAppDataKey
để dễ dàng tạo các đối tượngAppDataKey
- Hỗ trợ ảnh động Lottie, bao gồm cả lựa chọn đặt các trình kích hoạt khác nhau về thời điểm ảnh động sẽ bắt đầu, chẳng hạn như khi bố cục được tải hoặc khi bố cục hiển thị
- Cải thiện khả năng hỗ trợ chuyển màu:
- API chuyển màu tuyến tính là một phần của
Brush
, có thể dùng trong các đối tượng sửa đổiBackground
cho các phần tử nhưBox
,Spacer
, v.v. … - Cho phép các giá trị màu động trong
ColorStop
dùng cho kiểu chuyển màu tuyến tính và kiểu chuyển màu quét - Sweep Gradient hiện có trong các đối tượng vòng cung hiện hỗ trợ màu động cũng như góc bắt đầu và góc kết thúc
- Liên kết dữ liệu nền tảng trong
protolayout-expression
để nhận thông tin bất cứ khi nào chế độ hiển thị của bố cục thay đổi. Ví dụ: bạn có thể dùng thông tin này để ẩn một số phần của bố cục trong khi vuốt ô - Thư viện kiểm thử –
protolayout-testing
– đã được thêm vào để hỗ trợ phạm vi kiểm thử đơn vị dễ dàng hơn cho mọi phần tử ProtoLayout - Phần tử
DashedArcLine
mới với bộ tính năng cải tiến để đường kẻ có thể có dấu gạch ngang, thay vìArcLine
hiện có - Hỗ trợ
ArcSpacer
để đặt độ dài theo kích thước DP thay vì độ - Đã thêm trục độ tròn
FontSetting
áp dụng cho một số phông chữ
Phiên bản 1.3.0-rc01
Ngày 20 tháng 5 năm 2025
androidx.wear.protolayout:protolayout-*:1.3.0-rc01
được phát hành mà không có thay đổi nào so với bản phát hành trước. Phiên bản 1.3.0-rc01 bao gồm các thay đổi sau.
Phiên bản 1.3.0-beta02
Ngày 7 tháng 5 năm 2025
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-beta02
. Phiên bản 1.3.0-beta02 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã thực hiện một điểm cải tiến quan trọng trong các giá trị thiết kế Typography (Kiểu chữ) được áp dụng trên API 36 trở lên. Lý do là vì từ API 36, tất cả các Ô sẽ ở trong phông chữ hệ thống, nên thay đổi này sẽ giúp tăng tính nhất quán trong băng chuyền Ô. (If316f)
- Các trình tạo
Text
,Spacer
,ArcLine
vàDashedArcLine
sẽ không gửi nếu bạn chưa đặtlayoutConstraints
cho các giá trị động. Xin lưu ý rằng các trình kết xuất cũ vẫn yêu cầu bạn đặtlayoutConstraints
và sẽ bỏ qua mọi giá trị động chưa được đặt. (Ic52e8) - Thêm đối tượng sửa đổi ngữ nghĩa tiêu đề để cho biết rằng một phần tử bố cục là tiêu đề cho một phần nội dung nhằm hỗ trợ khả năng tiếp cận, đồng thời đánh dấu văn bản trong khe tiêu đề của
primaryLayout
là tiêu đề hỗ trợ tiếp cận theo mặc định. (Iae1fb) - Hoàn thiện trải nghiệm người dùng cuối của
primaryLayout
, trong đó khoảng cách giữa khe tiêu đề và khe chính giảm xuống còn 4 dp thay vì 6 dp trên màn hình nhỏ hơn. (I0e056) - Áp dụng nội dung mô tả mặc định cho
textEdgeButton
. (Ifaf8b) - Bản cập nhật nhỏ cho khoảng đệm bên trong
avatarButton
. (I0910b)
Phiên bản 1.3.0-beta01
Ngày 9 tháng 4 năm 2025
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-beta01
. Phiên bản 1.3.0-beta01 bao gồm các thay đổi sau.
Tính năng mới
Bản phát hành 1.3.0-beta01 của Wear ProtoLayout cho biết bản phát hành này của thư viện đã hoàn thiện về tính năng và API đã bị khoá (trừ những nơi được đánh dấu là thử nghiệm). Wear ProtoLayout 1.3 có các chức năng và API mới sau đây:
- Thiết kế Material 3 xuất hiện trên đồng hồ, với các thành phần và bố cục được tối ưu hoá cho màn hình tròn và có thể điều chỉnh kích thước phù hợp từ màn hình nhỏ đến màn hình lớn
- Trong đó có thư viện
protolayout-material3
chỉ dành cho Kotlin với nhiều API tương tự như Compose cho các thành phần và tính năng sau: - Giao diện màu động lấy từ hệ thống và mặt đồng hồ có giao diện Material3 mới nhất cho màu sắc, hình dạng và kiểu chữ
MaterialScope
để xử lý tất cả các giá trị mặc định có ý kiến và tuỳ chỉnh dễ dàng hơniconEdgeButton
,textEdgeButton
iconButton
,textButton
,button
,imageButton
,avatarButton
,compactButton
titleCard
,appCard
,graphicDataCard
,iconDataCard
,textDataCard
circularProgressIndicator
,segmentedCircularProgressIndicator
primaryLayout
,buttonGroup
- Tất cả các thành phần đều hoạt động ở mọi cấp độ SDK và phiên bản ProtoLayout Renderer, cung cấp các giải pháp dự phòng hợp lý nếu có thể
- Trong đó có thư viện
- Các API tương thích hơn với Kotlin và tương tự như Compose cho các phần tử ProtoLayout cơ bản
LayoutModifier
có khả năng thêm hầu hết các đối tượng sửa đổi dưới dạng các hàm được liên kết (padding
,contentDescription
(bao gồm cảclearSemantics
),background
,clip
,opacity
, v.v.), có thể chuyển đổi thành đối tượngModifiers
hiện cóLayoutColors
vàLayoutString
dưới dạng các loại có khả năng hỗ trợ dễ dàng hơn cho việc sử dụng các trường và ràng buộc độngtext
vàfontStyle
- hỗ trợ bản đồ tốt hơn cho
StateBuilder
, bao gồm cảDynamicDataMap
và các phương thức của nhà máy nhưintAppDataKey
để dễ dàng tạo các đối tượngAppDataKey
- Hỗ trợ ảnh động Lottie, bao gồm cả lựa chọn đặt các trình kích hoạt khác nhau về thời điểm ảnh động sẽ bắt đầu, chẳng hạn như khi bố cục được tải hoặc khi bố cục hiển thị
- Cải thiện khả năng hỗ trợ chuyển màu:
- API chuyển màu tuyến tính là một phần của
Brush
, có thể dùng trong các đối tượng sửa đổiBackground
cho các phần tử nhưBox
,Spacer
, v.v. … - Cho phép các giá trị màu động trong
ColorStop
dùng cho kiểu chuyển màu tuyến tính và kiểu chuyển màu quét - Sweep Gradient hiện có trong các đối tượng vòng cung hiện hỗ trợ màu động cũng như góc bắt đầu và góc kết thúc
- Liên kết dữ liệu nền tảng trong
protolayout-expression
để nhận thông tin bất cứ khi nào chế độ hiển thị của bố cục thay đổi. Ví dụ: bạn có thể dùng thông tin này để ẩn một số phần của bố cục trong khi vuốt ô - Thư viện kiểm thử –
protolayout-testing
– đã được thêm vào để hỗ trợ phạm vi kiểm thử đơn vị dễ dàng hơn cho mọi phần tử ProtoLayout - Phần tử
DashedArcLine
mới với bộ tính năng cải tiến để đường kẻ có thể có dấu gạch ngang, thay vìArcLine
hiện có - Hỗ trợ
ArcSpacer
để đặt độ dài theo kích thước DP thay vì độ - Đã thêm trục độ tròn
FontSetting
áp dụng cho một số phông chữ
Phiên bản 1.3.0-alpha10
Ngày 12 tháng 3 năm 2025
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-alpha10
. Phiên bản 1.3.0-alpha10 bao gồm các thay đổi sau.
Tính năng mới
- Thêm trình trợ giúp cho Brush trong Trình sửa đổi nền Kotlin. (I995de)
- Trường Ngữ cảnh Android bắt buộc đã được công khai trong
MaterialScope
để cho phép sử dụng dễ dàng hơn trong các hàm của nhà phát triển đang tạo thành phần cho thẻ thông tin Material3. (I7df73)
Thay đổi về API
- Đổi tên API
platformVisibilityStatus
thànhPlatformEventSources.isLayoutVisible
và thêm một API thử nghiệm mớiPlatformEventSources.isLayoutUpdatePending
. (Ie1e04)
Sửa lỗi
- Giờ đây, các lề cho
primaryLayout
được làm tròn lên đúng cách, điều này có thể ảnh hưởng đến một số bố cục lên đến 2dp không gian ít hơn cho khe chính. (I8f5d3) - Làm rõ giao diện màu động mặc định trong các thành phần
ProtoLayout
Material3. (Iff5f3) - Theo mặc định, kiểu chữ
Typography.NUMERAL_*
không còn ở dạng bảng/đơn cách nữa. Nếu văn bản đang chuyển động, bạn nên thêm chế độ cài đặtFontSetting.tabularNum()
vào văn bản đó. Trong tất cả các trường hợp khác, bạn không cần dùng lựa chọn đơn cách này và sẽ có nhiều ký tự hơn nếu không dùng. (Id3cd9) - Làm rõ giao diện màu động mặc định trong các thành phần
ProtoLayout
Material3. (I9d831)
Phiên bản 1.3.0-alpha09
Ngày 26 tháng 2 năm 2025
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-alpha09
. Phiên bản 1.3.0-alpha09 bao gồm các thay đổi sau.
Tính năng mới
- Thêm đối tượng sửa đổi thử nghiệm cho
enterTransition
vàexitTransition
(I4a4d6) - Chúng tôi đã thêm chế độ liên kết nền tảng bổ sung để nhận trạng thái hiển thị của bố cục đầy đủ, bất cứ khi nào trạng thái này thay đổi. (I250c3)
- Cho phép chèn trạng thái ứng dụng thử nghiệm và dữ liệu nền tảng vào
LayoutElementAssertionsProvider
để đánh giá các giá trị động. (Ib5fcb) - Thêm bộ lọc góc vào thư viện thử nghiệm protolayout (Ie2361)
ButtonColors
,CardColors
vàProgressIndicatorColors
hiện hỗ trợ phương thức sao chép, với tuỳ chọn ghi đè một số tham số. (Ie2054)
Thay đổi về API
- Thêm tính năng hỗ trợ liên kết dữ liệu động vào thư viện kiểm thử (Ib98de)
- Khắc phục
imageButton
khi dùng với hàmbackgroundImage
bằng cách xoá lớp phủ. Ngoài ra, cho phép hàmbackgroundImage
chỉ định giá trị rỗng cho màu lớp phủ, tức là lớp phủ sẽ không được áp dụng. (Ibec3c)
Sửa lỗi
- Thay đổi phương thức
hasValueOfType
mặc định để gửiUnsupportedOperationException
thay vìIllegalArgumentException
. (Ia36c3) - Các giá trị mã thông báo màu mặc định được cập nhật để phản ánh thông số kỹ thuật mới nhất. (I75d44)
- Khắc phục vấn đề răng cưa xuất hiện trên các đường vòng cung trong trình kết xuất thẻ thông tin AndroidX. (I88190)
Phiên bản 1.3.0-alpha08
Ngày 12 tháng 2 năm 2025
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-alpha08
. Phiên bản 1.3.0-alpha08 bao gồm các thay đổi sau.
Tính năng mới
- Thêm tham số danh sách
FontSetting
cho văn bản Material3. (Ic102d) - Thêm lớp
DynamicDataMap
màStateBuilder
hiện hỗ trợ để có API Kotlin an toàn về kiểu tốt hơn cho các trạng thái ứng dụng (I012ba) - Thêm các phương thức của nhà máy như
intAppDataKey
để dễ dàng tạo các đối tượngAppDataKey
(Icea2a) DynamicDataValue
hiện có phương thứchasValueOfType(Class<?>)
ngoài các phương thứchasInt/hasColor/
.... (I4f7a6)- Chúng tôi đã thêm
errorDim
vào Material3 ProtoLayoutColorScheme
cho các lỗi có mức độ ưu tiên cao hoặc hành động khẩn cấp, chẳng hạn như cảnh báo an toàn. (Ia17bb) - Chúng tôi đã thêm một biện pháp bảo vệ để tránh sự cố khi truy cập vào chế độ cài đặt chung về giảm chuyển động. Sự cố này xảy ra trên một số nền tảng không cung cấp chế độ cài đặt đó. (I01e2c)
Thay đổi về API
addKeyToValueMapping
được đổi tên thànhaddToStateMap
và các phương thứcDynamicDataMap.put
bị xoá vì chúng dư thừa. (Ibe9dd)- Kiểu chữ Material3 hiện hỗ trợ trục biến thiên về độ tròn cho các phông chữ hệ thống hỗ trợ trục này. ProtoLayout
FontSetting
hỗ trợ trục độ tròn cho những phông chữ hỗ trợ trục này. (I33eb5) - Đổi tên
multilineAlignment
thành căn chỉnh trong phương thức văn bản Material3. (I2b66b) - Cập nhật chỉ báo tiến trình dạng xoay tròn thành loại Hộp, đồng thời chỉ định
mainContent
trongconstructGraphic
thành loại Hộp (I5a3dc) - Hỗ trợ tốt hơn cho việc sử dụng chỉ báo tiến trình dạng xoay tròn trong biểu đồ (I039db)
Sửa lỗi
- Cho phép các giá trị động trong
ColorStop
và cả góc bắt đầu/kết thúc trongSweepGradient
. (I0146d) - Các bản sửa lỗi trong Tài liệu. (I4a63a)
- Cập nhật các thành phần Material 3 (
graphicCard
vàavatarButton
) để cung cấp giải pháp dự phòng khi không hỗ trợ phương diện mở rộngweight
(ví dụ: dưới API 33). Cập nhật thành phần văn bản để dự phòng vềTEXT_OVERFLOW_ELLIPSIZE_END
khi trình kết xuất không hỗ trợTEXT_OVERFLOW_ELLIPSIZE
. (I19e2c) - Nội dung cập nhật tài liệu cho
PrimaryLayoutMargins
. (Ibaf7b)
Phiên bản 1.3.0-alpha07
Ngày 29 tháng 1 năm 2025
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-alpha07
. Phiên bản 1.3.0-alpha07 bao gồm các thay đổi sau.
Tính năng mới
- Đã thêm lựa chọn API để đặt các điều kiện kích hoạt khác nhau cho ảnh động Lottie. Ngoài ra, đã thêm API cho các điều kiện kích hoạt được kích hoạt khi bố cục hiển thị (I8272d)
- Đã thêm đối tượng sửa đổi
border
,visibility
vàopacity
. (I6d3dd) - Thêm nút hình đại diện vào thành phần ProtoLayout Material3. (Idb5ae)
- Giờ đây, bạn có thể tuỳ chỉnh lề (bên và trong một số trường hợp là lề dưới) trong Material3
primaryLayout
. (Ib22f6) - Thêm biến thể phân đoạn của chỉ báo tiến trình dạng xoay tròn. (I6a648)
- Thêm thành phần nút thu gọn vào ProtoLayout Material3. (Ia3c5c)
- Thêm các thành phần nút hình viên thuốc và nút hình ảnh vào ProtoLayout Material3. (Ifb88a)
Thay đổi về API
LayoutModfier.foldIn
hiện được gọi làfoldRight
để phản ánh chính xác hơn hành vi dự kiến của nó (Idf242)- Điều kiện kích hoạt
VisibleOnce
hiện đang thử nghiệm. (Ib2d26) - Xoá
withOpacity
khỏi API công khai vì có một thư viện đồ hoạ thay thế. (I030c2) - Đổi tên các phương thức cấp cao nhất trong
LayoutString.kt
vàLayoutColor.kt
để có tên thân thiện với Java. (I7aff0) - Xoá các kiểu chữ không phải ProtoLayout trong Material3. (Idd9ae)
- Thêm hậu tố Color vào các trường trong lớp
*Colors
trong Material3. (I2d114)
Sửa lỗi
- Thêm chế độ dự phòng
EdgeButton
cho trình kết xuất cũ không hỗ trợ các góc bất đối xứng. (I63364) - Thêm phương thức triển khai dự phòng của chỉ báo tiến trình dạng xoay tròn bằng trình kết xuất cũ. (I0f134)
Phiên bản 1.3.0-alpha06
Ngày 15 tháng 1 năm 2025
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-alpha06
. Phiên bản 1.3.0-alpha06 bao gồm các thay đổi sau.
Tính năng mới
LayoutColor
để hỗ trợ cả kiểu màu tĩnh và động (I4c89b)- Đã thêm thành phần
ProtoLayout Material3
textButton. (Id680d) - Thêm thành phần
iconButton
ProtoLayout Material3. (Ica3f0) - Thêm thành phần vùng chứa nút ProtoLayout Material3. (I17a38)
- Thêm tính năng hỗ trợ đối tượng sửa đổi ngữ nghĩa có thể liên kết vào protolayout-material3 (I4af62)
- Đã thêm một phân đoạn
CircularProgressIndicator
Material3 ProtoLayout (I2c8a2) - Thêm các đối tượng sửa đổi
padding
,metadata
(I8720a) - Thêm đối tượng sửa đổi
background
,clip
vàclickable
(I35478) - Thêm
LinearGradient
vào Brush và cho phép dùng trong Background Modifier. (Ic4dea) - Thêm kích thước nhỏ cho appCard và
titleCard
. (I91f98) - Thêm thành phần ProtoLayout Material3
graphicDataCard
. (I92be7) - Thêm các thành phần ProtoLayout Material3
iconDataCard
vàtextDataCard
. (I4e1e4) - Thêm thành phần ProtoLayout Material3
appCard
. (Id4c57) - Tóm tắt
EdgeButtonColors
đếnButtonColors
. (I83624) - Thêm thành phần ProtoLayout Material3
titleCard
. (I2dc72)
Thay đổi về API
- API ProtoLayout Material3 hiện chấp nhận
LayoutString
để hỗ trợ cả văn bản tĩnh và văn bản động. (I9c24a)
Sửa lỗi
- Thêm cách triển khai trình kết xuất để tăng
DashedArcLine
(I0c700) - Thay đổi trình kết xuất để cho phép
ArcSpacer
lấy độ dài dp. (I1437b)
Phiên bản 1.3.0-alpha05
Ngày 11 tháng 12 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-alpha05
. Phiên bản 1.3.0-alpha05 bao gồm các thay đổi sau.
Tính năng mới
- Thêm
LayoutString
để hỗ trợ các trường chuỗi bố cục có thể liên kết. (Ida650) - Đã thêm thành phần vùng chứa thẻ
ProtoLayout Material3
. (Ic985a)
Sửa lỗi
- Thư viện này hiện sử dụng chú giải về khả năng rỗng JSpecify, là loại chú giải sử dụng. Nhà phát triển Kotlin nên sử dụng đối số trình biên dịch sau đây để thực thi việc sử dụng chính xác:
-Xjspecify-annotations=strict
(đây là đối số mặc định bắt đầu từ phiên bản 2.1.0 của trình biên dịch Kotlin). (Id1f9b, b/326456246)
Phiên bản 1.3.0-alpha04
Ngày 13 tháng 11 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-alpha04
. Phiên bản 1.3.0-alpha04 bao gồm các thay đổi sau.
Tính năng mới
- Cập nhật hình dạng Material3 thành một lớp có các trường lưu giữ giá trị Góc thực tế, giống như trong Wear Compose. (Ied8cd)
- Đã cập nhật màu Material3 để bao gồm khái niệm
ColorScheme
, giống như trong Wear Compose. (If645e) - Thêm nhiều đối tượng so khớp thường dùng vào thư viện kiểm thử. (Ie5cec)
Phiên bản 1.3.0-alpha03
Ngày 30 tháng 10 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-alpha03
. Phiên bản 1.3.0-alpha03 bao gồm các thay đổi sau.
Tính năng mới
- Thêm
LayoutElementAssertionsProvider
,LayoutElementAssertion
vàLayoutElementMatcher
vào thư viện thử nghiệm (Id1110)
Phiên bản 1.3.0-alpha02
Ngày 16 tháng 10 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-alpha02
. Phiên bản 1.3.0-alpha02 bao gồm các thay đổi sau.
Tính năng mới
- Phiên bản đầu tiên của thư viện Material 3. Bao gồm các thành phần
text
,edgeButton
,buttonGroup
vàprimaryLayout
.
Bản sửa lỗi bảo mật
- Kể từ thay đổi này, androidx sẽ biên dịch dựa trên protobuf 4.28.2 để giải quyết CVE-2024-7254. Nâng cấp phần phụ thuộc của bạn trên phiên bản 1.3.0-alpha01 của
androidx.wear.protolayout:protolayout-proto
vàandroidx.wear.protolayout:protolayout-external-protobuf
lên 1.3.0-alpha02 để giải quyết nguy cơ dễ bị tấn công.
Đóng góp bên ngoài
Phiên bản 1.3.0-alpha01
Ngày 2 tháng 10 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.3.0-alpha01
. Phiên bản 1.3.0-alpha01 bao gồm các thay đổi sau.
Sửa lỗi
- Làm rõ rằng tên bộ phông chữ Roboto và Roboto Flex có sẵn hay không là tuỳ thuộc vào thiết bị. (I193be)
- Đã bật bộ phông chữ Roboto Flex trong trình kết xuất Thẻ thông tin AndroidX. (I08e94)
Phiên bản 1.2
Phiên bản 1.2.1
Ngày 16 tháng 10 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.2.1
. Phiên bản 1.2.1 bao gồm các thay đổi sau.
Bản sửa lỗi bảo mật
- Kể từ thay đổi này, androidx sẽ biên dịch dựa trên protobuf 4.28.2 để giải quyết CVE-2024-7254. Nâng cấp phần phụ thuộc của bạn trên phiên bản 1.2.0 của
androidx.wear.protolayout:protolayout-proto
vàandroidx.wear.protolayout:protolayout-external-protobuf
lên 1.2.1 để giải quyết nguy cơ gây ra lỗ hổng.
Phiên bản 1.2.0
Ngày 7 tháng 8 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.2.0
. Phiên bản 1.2.0 bao gồm các thay đổi sau.
Thay đổi quan trọng kể từ phiên bản 1.1.0
FontStyle
đã được cập nhật để có thêm chế độ hỗ trợ phông chữ cho các trục biến đổi và API chọn phông chữ hiệu quả hơn để hỗ trợ phông chữ linh hoạt sắp ra mắt.- Hỗ trợ thêm các đối tượng sửa đổi:
- Đối tượng sửa đổi biến đổi cung cấp tính năng dịch, xoay và mở rộng quy mô có hoặc không có ảnh động.
- Chỉ định các giá trị khác nhau (ngang và dọc) cho từng bán kính góc.
- Cải thiện khả năng tiếp cận của tất cả các đích chạm bằng cách mở rộng khu vực có thể nhấn của mọi phần tử sử dụng đối tượng sửa đổi Clickable (Có thể nhấp) thành ít nhất
48dp
x48dp
. - Cải thiện
PrimaryLayout
vàEdgeContentLayout
bằng cách thêmsetResponsiveContentInsetEnabled
để hỗ trợ tốt hơn hành vi thích ứng của các bố cục này trên nhiều kích thước màn hình và cải thiện tính nhất quán của các ô. - Cải thiện khả năng điều chỉnh tỷ lệ/không điều chỉnh tỷ lệ của Văn bản Material cho tính năng điều chỉnh tỷ lệ phông chữ phi tuyến tính của Android 14.
- Cải thiện khả năng hỗ trợ hướng bố cục từ phải sang trái trên tất cả các phần tử vòng cung.
Các thay đổi khác
- Để biết danh sách đầy đủ hơn về các thay đổi trong phiên bản 1.1.0, hãy xem ghi chú phát hành beta01.
Phiên bản 1.2.0-rc01
Ngày 24 tháng 7 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.2.0-rc01
. Phiên bản 1.2.0-rc01 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã cố định Material Chip tiêu chuẩn để có thể dùng làm biểu tượng nếu không có nhãn chính hoặc nhãn phụ nào được truyền vào. (Iceef9)
- Tài liệu về bố cục Material đã được cập nhật để bao gồm hình ảnh từ trang có liên quan, giúp bạn dễ dàng hiểu được bố cục. (I0256a)
Phiên bản 1.2.0-beta01
Ngày 10 tháng 7 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.2.0-beta01
. Phiên bản 1.2.0-beta01 bao gồm các thay đổi sau.
Tính năng mới
Bản phát hành 1.2.0-beta01 của Wear ProtoLayout cho biết bản phát hành này của thư viện đã hoàn thiện về tính năng và API đã bị khoá (ngoại trừ những nơi được đánh dấu là thử nghiệm). Wear ProtoLayout 1.2 có các chức năng và API mới sau đây:
FontStyle
đã được cập nhật để hỗ trợ thêm các phông chữ như sau:- Đặt chế độ cài đặt biến thể phông chữ khác nhau, chẳng hạn như
FontSetting.weight
vàFontSetting.width
- Đặt cùng chiều rộng cho tất cả các ký tự số – chữ số dạng bảng (chế độ cài đặt tính năng phông chữ
FontSetting.tnum
) - Cải thiện các API lựa chọn phông chữ để hỗ trợ các phông chữ linh hoạt sắp ra mắt bằng cách chỉ định tên bộ phông chữ ưu tiên sẽ được dùng.
- Đặt chế độ cài đặt biến thể phông chữ khác nhau, chẳng hạn như
- Mở rộng đối tượng sửa đổi
Corner
để hỗ trợ việc chỉ định từngCornerRadius
bằng các giá trị ngang và dọc riêng biệt để cho phép tạo các phần tử có góc không đối xứng. - Thêm đối tượng sửa đổi
Transformation
mới cung cấp tính năng dịch, xoay và chia tỷ lệLayoutElement
. Bạn có thể tạo hiệu ứng cho các phép biến đổi này bằng cách sử dụng các giá trị động. - Đã thêm
setArcDirection
với các lựa chọnClockwise
,CounterClockwise
vàNormal
vào tất cả các phần tử vòng cung (Arc
,ArcLine
vàArcText
) để hỗ trợ tốt hơn ở các hướng bố cục khác nhau (chẳng hạn như LTR và RTL). - Cải thiện khả năng hỗ trợ tiếp cận của tất cả các đích chạm bằng cách mở rộng vùng có thể nhấn của mọi phần tử sử dụng đối tượng sửa đổi
Clickable
thành ít nhất48dp
x48dp
. - Cải thiện
PrimaryLayout
vàEdgeContentLayout
bằng cách thêmsetResponsiveContentInsetEnabled
để hỗ trợ tốt hơn hành vi thích ứng của các bố cục này trên nhiều kích thước màn hình và cải thiện tính nhất quán của các ô. Thêm cảnh báo của linter để đề xuất sử dụng các API này bằng một bản sửa lỗi nhanh. - Cải thiện khả năng điều chỉnh tỷ lệ/không điều chỉnh tỷ lệ của
Text
Material cho tính năng điều chỉnh tỷ lệ phông chữ phi tuyến tính của Android 14.
Thay đổi về API
- Tên bộ phông chữ mặc định (
DEFAULT_SYSTEM_FONT
) sẽ bị xoá vì được ngầm hiểu là không sử dụng APIpreferredFontFamilies
. (I39dab) - Tham số được truyền vào
FontSetting.width
phải là số dương. (I1266f)
Phiên bản 1.2.0-alpha05
Ngày 26 tháng 6 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.2.0-alpha05
. Phiên bản 1.2.0-alpha05 bao gồm các thay đổi sau.
Tính năng mới
- Thêm phương thức
hasText
vàoMaterial.CompactChip
để kiểm tra xem nội dung văn bản đã được đặt hay chưa. (I6e8fc)
Thay đổi về API
FontFamily
const được di chuyển vàoFontStyle
thay vì lớp Builder của nó. (I06ced)- Cập nhật API
FontSetting.weight
vàFontSetting.width
để thêm chú thích Phạm vi và thay đổi tham số trọng số thành int. (Ia726c)
Sửa lỗi
- Văn bản không thể điều chỉnh tỷ lệ trong thư viện Material hiện hoạt động chính xác với tính năng điều chỉnh tỷ lệ phông chữ phi tuyến tính của Android 14. (I6601e)
Phiên bản 1.2.0-alpha04
Ngày 29 tháng 5 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.2.0-alpha04
. Phiên bản 1.2.0-alpha04 bao gồm các thay đổi sau.
Thay đổi về API
- Đã thêm API góc không đối xứng để có thể chỉ định riêng bán kính của từng góc bằng 2 giá trị. (Icbd69)
- Mở rộng API
FontSetting
để bao gồm: - Đã thêm API bộ phông chữ vào
FontStyle
để cho phép chỉ định danh sách thứ tự của những bộ phông chữ nên dùng. (Iba9f5) - Đổi tên các hằng số cho chiều cao khoảng trống giữa nội dung và nhãn phụ trong
LayoutDefaults
của Material. Ban đầu, các hằng số này có tiền tố "Nội dung cạnh" để trở nên chung chung hơn vì có thể áp dụng cho cảPrimaryLayout
vàEdgeContentLayout
. (I4dc32)
Sửa lỗi
- Đã đổi tên các trục của phông chữ có thể thay đổi từ
axisName
thànhaxisTag
. (I02ba3)
Phiên bản 1.2.0-alpha03
Ngày 14 tháng 5 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.2.0-alpha03
. Phiên bản 1.2.0-alpha03 bao gồm các thay đổi sau.
Tính năng mới
- Thêm API để thiết lập các giá trị trọng số tuỳ chỉnh cho
FontStyle
. (I7390a)
Sửa lỗi
- Khắc phục lỗi trong
getTouchDelegateInfo
do bản đồ đích trống. (I2accf)
Phiên bản 1.2.0-alpha02
Ngày 1 tháng 5 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.2.0-alpha02
. Phiên bản 1.2.0-alpha02 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thêm tính năng hỗ trợ vô hiệu hoá hiệu ứng phản hồi gợn sóng trên từng phần tử có thể nhấp. (If1ede)
- API để chuyển đổi đã bị xoá khỏi
ArcModifiers
vì không hỗ trợ tính năng đó (Ic0827) - Giờ đây,
ArcDirectionProp
Builder chờ đợi một giá trị trong hàm khởi tạo. (I76ada) - Phương thức
PlatformDataValues.Builder.putAll
sẽ cho phép hợp nhất mộtPlatformDataValue
vào mộtPlatformDataValue
khác. (I50ba3) Text#setIsScalable
đổi tên thànhText#setScalable
. (If920e)- Văn bản Material có thể đặt xem có sử dụng kích thước có thể mở rộng (tăng lên khi người dùng thay đổi cỡ chữ) hay không. (Ibc849)
- Chúng tôi đã thêm lựa chọn đặt nội dung mô tả thành
TitleChip
. (I5d21f) - Đã sửa lỗi
CompactChip
để hoạt động chính xác với chỉ biểu tượng và cập nhật API để cho phép lựa chọn này. (I6589e)
Sửa lỗi
- Khắc phục vấn đề có thể xảy ra trùng lặp dữ liệu nền tảng trong quá trình khởi tạo. (Iba0fd)
- Giới thiệu một getter mới cho
DynamicDataNode
để truy xuất chi phí của nút. Chi phí này được dùng khi bạn nhận được hạn mức nút động. Hiện tại, các Nút có giá trị cố định sẽ có chi phí là 0, tất cả các nút khác sẽ có chi phí là 1. (Ia33e1) - Xoá logic đếm khỏi
NO_OP_QUOTA_MANAGER
. (Ib50b8) - Chúng tôi đã thêm một quy tắc Lint (tìm lỗi mã nguồn) để báo cáo cảnh báo khi
PrimaryLayout
được dùng mà không cósetResponsiveContentInsetEnabled
và cung cấp một bản sửa lỗi nhanh. (I12025) - Có giới hạn về số lượng nút biểu thức động. (Iffae8)
Phiên bản 1.2.0-alpha01
Ngày 6 tháng 3 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.2.0-alpha01
. Phiên bản 1.2.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Giờ đây, các phần tử
ProtoLayout Arc
có thể thêmArcDirection
(Clockwise
,Counterclockwise
hoặcNormal
) vào đó. Việc thêm hành vi này vàoArc
,ArcLine
hoặcArcText
sẽ khắc phục hành vi của chúng trên bố cục RTL. (I90699) EdgeContentLayout
đã được cập nhật bằng một bộ thiết lậpsetResponsiveContentInsetEnabled
mới để đạt được sự điều chỉnh tốt hơn theo nguyên tắc trải nghiệm người dùng, tính nhất quán trong các Ô bằng cách đặt nhãn chính ở vị trí cố định trên cùng và phần lồng phản hồi cho các nhãn. (I60175)- Chúng tôi đã thêm
PrimaryLayout.setResponsiveContentInsetEnabled
để thêm phần lồng ghép thích ứng vào nhãn chính, nhãn phụ và khối chip dưới cùng trong bố cục này, nhằm tránh nội dung bị tràn ra ngoài cạnh màn hình. (I0c457) - Thêm phương thức để xoá lề ngoài khỏi
CircularProgressIndicator
để có thể dùng làm một thành phần nhỏ hơn. (I55c06)
Thay đổi về API
- Giờ đây, trình kết xuất ô loại trừ khoảng đệm phông chữ trên tất cả các phần tử văn bản theo mặc định, mà không có lựa chọn nào để đưa khoảng đệm đó vào. (I3e300)
Sửa lỗi
- Khắc phục vấn đề về căn chỉnh văn bản khi tất cả các thuộc tính ellipsize, letter spacing và center align đều được dùng trên Văn bản. (I716c7)
- Thêm giải pháp tạm thời cho vấn đề vẽ cung skia. (I08f09)
- Sửa hướng vẽ
ArcLine
cho bố cục RTL. (I6c141)
Phiên bản 1.1
Phiên bản 1.1.0
Ngày 7 tháng 2 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.1.0
. Phiên bản 1.1.0 bao gồm các thay đổi sau.
Thay đổi quan trọng kể từ phiên bản 1.0.0
- Hỗ trợ chuyển màu và thể hiện chính xác hơn các độ dài lớn hơn 360 độ trong
ArcLine
. - Định dạng ngày giờ hỗ trợ nhiều múi giờ cho các loại dữ liệu động.
- Các lựa chọn tự động điều chỉnh kích thước và cắt bớt văn bản tốt hơn để xử lý văn bản bị cắt bớt.
- Spacer hỗ trợ các phương diện mở rộng với trọng số không bắt buộc.
- Chú thích yêu cầu về phiên bản giản đồ cho tất cả các API
ProtoLayout
. - Mở rộng vùng đích cho mọi phần tử
Clickable
thành 48 dp x 48 dp để đáp ứng các yêu cầu về khả năng hỗ trợ tiếp cận. - Theo mặc định, khoảng đệm phông chữ sẽ bị tắt và là hành vi duy nhất trên tất cả các phần tử Văn bản và thành phần Material có chứa văn bản.
Các thay đổi khác
- Để biết danh sách đầy đủ hơn về các thay đổi trong phiên bản 1.1.0, hãy xem ghi chú phát hành beta01.
Phiên bản 1.1.0-rc01
Ngày 24 tháng 1 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.1.0-rc01
. Phiên bản 1.1.0-rc01 bao gồm các thay đổi sau.
Sửa lỗi
PlatformTimeUpdateNotifierImpl
đánh dấu ngay sau khi bật tính năng cập nhật. (I77145)- Đã khắc phục
CircularProgressIndicator
cho bố cục RTL. Từ giờ trở đi, nó sẽ xoay theo chiều kim đồng hồ trong mọi trường hợp. (I95ee3) - Thêm giải pháp tạm thời cho vấn đề vẽ cung skia. (I08f09)
Phiên bản 1.1.0-beta01
Ngày 10 tháng 1 năm 2024
Phát hành androidx.wear.protolayout:protolayout-*:1.1.0-beta01
. Phiên bản 1.1.0-beta01 bao gồm các thay đổi sau.
Tính năng mới
Bản phát hành 1.1.0-beta01 của Wear ProtoLayout cho biết bản phát hành này của thư viện đã hoàn thiện về tính năng và API đã bị khoá (trừ những nơi được đánh dấu là thử nghiệm). Wear ProtoLayout 1.1 có các chức năng và API mới sau đây:
ArcLine
hiện hỗ trợ chuyển màu bằng cách thêmBrush
vớiSweepGradient
và có bóng trên nắp để thể hiện rõ hơn độ dài lớn hơn 360 độ bằng cách thêmShadow
vàoStrokeCap
hiện có.DynamicInstant
hỗ trợ định dạng ngày giờ theo múi giờ.DynamicInstant
vàDynamicDuration
có thể được dùng làm loại dữ liệu trạng thái hoặc nền tảng.- Tính năng tự động điều chỉnh kích thước cho cỡ chữ, cho phép đặt nhiều kích thước thành
FontStyle.setSizes
, trong đó Cỡ chữ sẽ tự động điều chỉnh tỷ lệ dựa trên khoảng trống mà nó có bên trong thành phần mẹ. Ngoài ra, chúng tôi đã cải thiện các lựa chọn cắt bớt cho văn bản tràn bằng cách thêmTEXT_OVERFLOW_ELLIPSIZE
và ngừng sử dụngTEXT_OVERFLOW_ELLIPSIZE_END
. Spacer
hiện hỗ trợ việc mở rộng các phương diện với trọng số không bắt buộc. Để tạoExpandedDimensionProp
, chúng tôi đã thêm một phương thức trợ giúpDimensionBuilders.weight
.- Hỗ trợ việc ẩn và hiện linh hoạt các phần tử bố cục bằng
Modifier.visible
. Điều này bao gồm việc có các giá trị linh động trongBoolProp
. - Tất cả API
ProtoLayout
hiện đều có chú thích yêu cầu về phiên bản giản đồ và bạn có thể kiểm tra phiên bản trước khi gọi một API mới hơn. - Mọi phần tử có
Clickable
hiện có vùng đích được mở rộng ít nhất là 48x48 trong trình kết xuất để hỗ trợ tốt hơn các yêu cầu về khả năng hỗ trợ tiếp cận. - Sau các thành phần Material và sáng kiến Compose khác, giờ đây, chúng tôi đã tắt tính năng đệm phông chữ theo mặc định trên tất cả các phần tử
Text
. Ngoài ra,AndroidTextStyle
và các phương thức thiết lập liên quan đã bị xoá khỏi API công khai. kèm theo các bản sửa lỗi sau: - Đã thêm một phương thức thiết lập để định vị nội dung cạnh trong
EdgeContentLayout
để nội dung đó có thể được định vị trước nội dung khác. - Liên tục gửi một ngoại lệ khi gặp phải giá trị enum không nhận dạng được.
- Làm mất hiệu lực kết quả của một biểu thức khi biểu thức đó tạo ra một giá trị số không hợp lệ (NaN hoặc vô hạn) hoặc gửi một
ArithmeticException
.
Thay đổi về API
- Cập nhật API
SweepGradient
để cho phép chấp nhận màu sắc hoặcColorStops
trong hàm khởi tạo. (I6676f)
Sửa lỗi
- Thêm một API bị hạn chế và hỗ trợ trình kết xuất để đặt hướng vẽ các phần tử hình vòng cung. (Idef5a)
RoundMode
mặc định làFloor
trongFloatToInt32Node
khi không được chỉ định. Nút này vẫn sẽ gửi một trường hợp ngoại lệ nếuRoundMode
được cung cấp không được nhận dạng. (I1b2d8)
Phiên bản 1.1.0-alpha04
Ngày 13 tháng 12 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.1.0-alpha04
. Phiên bản 1.1.0-alpha04 bao gồm các thay đổi sau.
Tính năng mới
- Lớp
VersionInfo
không triển khai giao diệnComparable
. (I8d13c) - Trình kết xuất hiện hỗ trợ lựa chọn
TEXT_OVERFLOW_ELLIPSIZE
. (I7f085)
Thay đổi về API
- Tuỳ chọn tràn văn bản
TEXT_OVERFLOW_ELLIPSIZE_END
hiện không còn được dùng nữa. Vui lòng sử dụng APITEXT_OVERFLOW_ELLIPSIZE
mới có hành vi tương tự. (I822d8) - Sau các thành phần Material và sáng kiến Compose khác, giờ đây, chúng tôi đã tắt khoảng đệm phông chữ theo mặc định trên tất cả các phần tử Văn bản. Ngoài ra,
AndroidTextStyle
và các phương thức setter liên quan đã bị xoá khỏi API công khai. (I79094, Ib0b03, I32959, Iaf7d5, Ifa298, I0a4ae, Ida9d3) Modifier.hidden
được thay thế bằngModifier.visible
(I56902)FontStyle#setSizes
hiện chấp nhận int thay vì các đối sốSpProp
. (I02b37)
Sửa lỗi
- Gửi một ngoại lệ khi gặp phải giá trị enum Undefined hoặc Unrecognized. (I9d2cf)
- Tái cấu trúc
DynamicTypeBindingRequest
. (I27b57) - Làm mất hiệu lực kết quả của một biểu thức khi biểu thức đó tạo ra một giá trị số không hợp lệ (NaN hoặc vô hạn) hoặc gửi một
ArithmeticException
. (I681ae)
Phiên bản 1.1.0-alpha03
Ngày 29 tháng 11 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.1.0-alpha03
. Phiên bản 1.1.0-alpha03 bao gồm các thay đổi sau.
Tính năng mới
- Thêm tính năng hỗ trợ thử nghiệm để ẩn/hiện các phần tử bố cục một cách linh động (I64a78)
- Thêm tính năng hỗ trợ giá trị động vào
BoolProp
(I2fe96) - Thêm chú thích yêu cầu về phiên bản giản đồ vào các API
ProtoLayout
(I0f03c) - Mở rộng API bằng lựa chọn mới trong
TextOverflow
để cắt bớt Văn bản trong một vùng chứa mẹ cố định ngay cả khi chưa đạt đến số dòng tối đa (nhưng không có đủ không gian cho Văn bản). (I110a9) - Thêm phương thức hỗ trợ
DimensionBuilders.weight
để tạoExpandedDimensionProp
có trọng số. (I4f72b) DynamicInstant
vàDynamicDuration
có thể được dùng làm loại dữ liệu trạng thái hoặc nền tảng. (I6819f)
Thay đổi về API
- Cập nhật API để ẩn
DynamicZonedDateTime
và chuyển tất cả các thao tác của API này sangDyanamicInstant
(I34b94) - Thành phần Spacer hiện hỗ trợ phương diện Mở rộng cho chiều rộng/chiều cao. (Ie7c94)
- Hỗ trợ tiện ích khu vực mục tiêu của lượt nhấp trong Trình kết xuất (I39c79)
Phiên bản 1.1.0-alpha02
Ngày 15 tháng 11 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.1.0-alpha02
. Phiên bản 1.1.0-alpha02 bao gồm các thay đổi sau.
Tính năng mới
- Thêm trường
ArcLine
StrokeCap
Shadow
vào API. (I830ec) - Mở rộng API để có thể chỉ định chiều rộng hoặc chiều cao của Spacer để mở rộng. (I757ca)
- Chúng tôi đã thêm một API thử nghiệm để tự động điều chỉnh kích thước văn bản dựa trên khoảng trống mà văn bản có bên trong thành phần mẹ. (Ibbe63)
- Hỗ trợ kích thước tối thiểu có thể nhấp (I178e3)
- Thêm tính năng hỗ trợ trình kết xuất cho
StrokeCap
Shadow
. (I48b17) - Thêm tính năng hỗ trợ trình kết xuất cho Chuyển màu quét trong
ArcLine
. (I4d5bb)
Phiên bản 1.1.0-alpha01
Ngày 18 tháng 10 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.1.0-alpha01
. Phiên bản 1.1.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Thêm lựa chọn cọ vẽ vào
Arcline
, có hỗ trợSweepGradient
. (Ie7ce3) - Thêm tính năng hỗ trợ định dạng ngày giờ theo múi giờ. (Ibfae0)
- Đã thêm các giao thức và trình bao bọc Java cần thiết để định dạng ngày giờ theo múi giờ. (I97126)
- Đã thêm các phương thức getter để đọc lại giá trị được lưu trữ trong một
DynamicDataValue
. (Ie6cea) - Đã thêm một phương thức thiết lập để định vị nội dung cạnh trong
EdgeContentLayout
để nội dung đó có thể được định vị trước nội dung khác. (Ie8e8a)
Sửa lỗi
- Khắc phục vấn đề khi một biểu thức có nhiều lượt đăng ký nguồn dữ liệu thời gian không được cập nhật ngay lập tức. (I8e1a8)
- Khắc phục một lỗi để căn giữa phần tử gốc trong quá trình cập nhật chênh lệch. (Ie48f7)
- Các giá trị ràng buộc bố cục chưa đặt (hoặc trống) sẽ không bị bỏ qua nữa. (Ibc785)
- Giảm độ trễ giữa thời điểm bố cục hiển thị và thời điểm các nút trong quy trình của bố cục được khởi chạy. (I38d4e)
Phiên bản 1.0
Phiên bản 1.0.0
Ngày 9 tháng 8 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0
. Phiên bản 1.0.0 bao gồm các thay đổi sau.
Các tính năng chính của phiên bản 1.0.0
Thư viện ProtoLayout giới thiệu các API để tạo bố cục và biểu thức có thể dùng trên nhiều nền tảng Wear OS. Ví dụ: thư viện Thẻ thông tin sử dụng các API này để hỗ trợ liên kết dữ liệu nền tảng (để cập nhật dữ liệu thẻ thông tin nhanh hơn) và ảnh động.
Phiên bản 1.0.0-rc01
Ngày 26 tháng 7 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-rc01
. Phiên bản 1.0.0-rc01 bao gồm các thay đổi sau.
- Để di chuyển từ Tiles sang
ProtoLayout
, vui lòng làm theo hướng dẫn tại đây.
Thay đổi về API
- Chúng tôi đã xoá các phương thức
setLayoutConstraintForDynamicAnchorAngle
vàgetLayoutConstraintForDynamicAnchorAngle
khỏi phần tử Arc. Các phương thức này được thêm nhầm và không ảnh hưởng đến bố cục được cung cấp. (If7d01) - Chúng tôi đã giới hạn độ sâu tối đa mà bố cục của
ProtoLayout
có thể có là 30LayoutElements
lồng nhau. (I8a74b)
Sửa lỗi
- Chúng tôi đã thêm một quy trình kiểm tra để đưa ra thông báo lỗi nếu
DynamicColor
được đặt choSpanText
. (I0e5bc) - Đơn vị nguồn dữ liệu
DAILY_CALORIES
là kcal. (Iaa785)
Phiên bản 1.0.0-beta01
Ngày 21 tháng 6 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-beta01
. Phiên bản 1.0.0-beta01 bao gồm các thay đổi sau.
Tính năng mới
- Cho phép đặt đồng hồ cho các kiểm thử liên kết thời gian. (I05622)
Thay đổi về API
PlatformDataReceiver.onData()
vàStateBuilders.Builder.addKeyToValueMapping
hiện chấp nhận việc ánh xạ an toàn theo kiểu từDynamicDataKey
sangDynamicDataValue
thay vì các giá trị chung không an toàn. Điều đó có nghĩa làDynamicDataValue
hiện được nhập bằngDynamicType
. Các hằng sốHEART_RATE_ACCURACY_X
được di chuyển đến gốc củaPlatformHealthSources
, để khớp với vị trí của các hằng số Android khác. Hiện tại, các hằng số intHEART_RATE_ACCURACY_X
được dùng trực tiếp trongDynamicHeartRateAccuracy.constant()
vàDynamicHeartRateAccuracy.dynamicDataValueOf()
thay vì hằng số giá trị. (I82ff5)- Lớp
PlatformHealthSources.Constants
có thể được khởi tạo do nhầm lẫn. Vấn đề này hiện đã được khắc phục. (Icb849) PlatformTimeUpdateNotifier#setReceiver
hiện nhận đượcRunnable
thay vì hàmSupplier
vàExecutor
để thông báo. (I9d938)- Chúng tôi đã thay đổi loại tham số trong
PlatformTimeUpdateNotifier#setReceiver
từCallable
thànhSupplier
. (I664bf) CompactChip
vàTitleChip
hiện hỗ trợ việc thêm biểu tượng vào đó. (I5a01e)
Sửa lỗi
- Cập nhật thông báo Prop bằng các trường động để sử dụng oneof (I81739)
- Sử dụng lại việc triển khai phương thức thiết lập cho các phương thức nạp chồng có phương thức thiết lập (Ied70c)
- Ghi lại dấu vân tay đúng cách trong các phương thức setter có phương thức nạp chồng (I86ed2)
Phiên bản 1.0.0-alpha11
Ngày 7 tháng 6 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-alpha11
. Phiên bản 1.0.0-alpha11 chứa những cam kết này.
Tính năng mới
- Chúng tôi đã thêm một
PlatformDataKey
để đo độ chính xác của nhịp tim. (I7f9b8)
Thay đổi về API
- Đổi tên
StateBuilders#getIdToValueMapping
thànhgetKeyToValueMapping
và thay đổi loại trả về thànhMap<<AppDataKey<?>,DynamicDataValue>
. (Iaa7ae) - Đặt
StateStore
thành lớp cuối cùng (I408ca) - Giao diện
TimeGateway
đã được thay thế bằngPlatformTimeUpdateNotifier
trong thư việnprotolayout-expression-pipeline
. Thư viện này cung cấp tần suất mong muốn để cập nhật dữ liệu thời gian. (I60869) - Đổi tên
register
/unregisterForData
trongPlatformDataProvider
thànhset
/clearReceiver
(I14b02) - Trong Văn bản Material,
getExcludeFontPadding
đã được đổi tên thànhhasExcludeFontPadding
. (Iea01d) - Trình thiết lập để căn chỉnh nhãn một cách hoàn hảo đã được thêm vào tất cả các thành phần khối. Giờ đây, tất cả các khối đều có mục tiêu tối thiểu có thể nhấn. (I8ae92)
LayoutDefaults#BUTTON_MAX_NUMBER
đổi tên thànhMAX_BUTTONS
(I84788)DAILY_DISTANCE
đổi tên thànhDAILY_DISTANCE_M
. (I4f758)
Sửa lỗi
- Cập nhật tài liệu về các loại Prop để làm rõ lý do giá trị tĩnh được thực thi. Chỉ định giá trị mặc định được dùng nếu bạn không cung cấp giá trị tĩnh. (I155aa)
- Không gian tên
PlatformDataKey
phải tuân theo quy ước đặt tên kiểu Java. (I47bda)
Phiên bản 1.0.0-alpha10
Ngày 24 tháng 5 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-alpha10
. Phiên bản 1.0.0-alpha10 bao gồm các thay đổi sau.
Tính năng mới
- Thêm
AppDataKey
để truy cập vào trạng thái được đẩy của ứng dụng; ThêmPlatformDataKey
để truy cập vào dữ liệu nền tảng; Thêm tính năng hỗ trợ không gian tên trongStateStore
. (I7985e) - Hỗ trợ các thao tác
Equal
vàNotEqual
choDynamicBool
. (I6a0c1)
Thay đổi về API
- Lớp
FontStyles
hiện đã hoàn chỉnh (Iaa2ea) - Ngừng sử dụng
LayoutElementBuilders#FontStyles
. Vui lòng sử dụngandroidx.wear.protolayout.Typography
hoặc tạoFontStyle
của riêng bạn. (Ic929b) - Ẩn giao diện lồng nhau
Action#Builder
khỏi giao diệnAction
. Các lớpLoadAction
vàLaunchAction
đã cung cấp các cách triển khai Builder. (I1d70c) - Cho phép sử dụng
DynamicFloat
vớiFloatProp
. Xin lưu ý rằngFloatProp
không yêu cầu các ràng buộc về bố cục vì không được dùng làm thuộc tính thay đổi bố cục. (I286ac) - Các thao tác
LoalAction
vàSetStateAction
đã bị xoá vì chưa thực sự được hỗ trợ. (I5d6a6) - Thêm tính năng hỗ trợ định dạng ARGB_8888 cho tài nguyên hình ảnh nội tuyến. (I8a07c)
- Đổi tên
StateEntryValue
thànhDynamicDataValue
và cập nhật các API trạng thái để sử dụngDynamicDataKey
(If1c01) - Chúng tôi đang giới hạn số lượng mục được phép có trong
StateStore
để đảm bảo mức sử dụng bộ nhớ và thời gian cập nhật trạng thái được kiểm soát và hạn chế cho từng phiên bản củaStateStore
. Do đó, nhà phát triển cần đảm bảo rằng họ không có quáMAX_STATE_ENTRY_COUNT
mục trong bản đồ, nếu không họ sẽ nhận đượcIllegalStateException
khi tạo hoặc cập nhậtStateStore
. (Ibadb3) - Ẩn các lớp
OnLoadTrigger
vàOnConditionMetTrigger
, đồng thời đổi tênsetTrigger
thànhsetCondition
choOnConditionMetTrigger
. (Ibf629) - Vì lý do về hiệu suất và khả năng tương thích, các trình kết xuất
ProtoLayout
sẽ không hỗ trợ toàn bộ các tính năng trong tài nguyênAnimatedVectorDrawable
. Chúng tôi sẽ đánh dấu những API đó là thử nghiệm cho đến khi có thể xác định được tập hợp được hỗ trợ. (Ic6daf) - Thêm các loại động cho quãng đường hằng ngày, lượng calo hằng ngày và số tầng hằng ngày. Các khoá cho nguồn thông tin về tình trạng của nền tảng hiện nằm trong
PlatformHealthSources.Keys
(Ib7637) - Phương thức
Easing.cubicBezier
thay thếCubicBezierEasing.Builder
. Với cách này, lớpEasingFunction
sẽ bị xoá và các hằng số làm chậm từ lớp đó hiện có thể truy cập trực tiếp từ giao diệnEasing
. Ngoài ra,setInfiniteRepeatable
được thay thế bằngINFINITE_REPEATABLE_WITH_RESTART
vàINFINITE_REPEATABLE_WITH_REVERSE
(Ib41e7) - Triển khai
PlatformDataProvider
để cung cấp dữ liệu về nhịp tim và số bước hằng ngày. Giao diệnSensorGateway
bị xoá khỏi API công khai. (I55b84) - Thêm
PlatformDataProvider
và cập nhậtStateStore
để đăng kýPlatformDataProvider
khi nút yêu cầu khoá được nhà cung cấp hỗ trợ từ quy trình biểu thức. (Ib616a) SensorGateway
không còn làCloseable
nữa vì không còn duy trì trạng thái nào. (I6b4f7)- Cho phép sử dụng
FloatProp
vớiDynamicFloat
để theo dõi tiến trình trongCircularProgressIndicator
. Điều này được hỗ trợ cho những trình kết xuất hỗ trợ phiên bản 1.2. Các trình kết xuất cũ sẽ dự phòng vềstaticValue
nếu được cung cấp, nếu không thì về 0 (I0d91b) - Các hằng số
MultiButtonLayout
đã được tái cấu trúc thành lớpLayoutDefaults.MultiButtonLayoutDefaults
. Lớp này hiện chứa các hằng số cho kích thước nút, tuỳ thuộc vào số lượng nút trong bố cục. (I13973) - Hỗ trợ việc sử dụng
StringProp
vớiDynamicString
trong Văn bản Material. Điều này được hỗ trợ cho những trình kết xuất hỗ trợ phiên bản 1.2. Các trình kết xuất cũ sẽ quay lại giá trị tĩnh được cung cấp. Cập nhật loại dữ liệu trả vềText#getText
từString
thànhStringProp
. (I7275b)
Phiên bản 1.0.0-alpha09
Ngày 10 tháng 5 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-alpha09
. Phiên bản 1.0.0-alpha09 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi đã thêm một phần tử bố cục tiện ích thử nghiệm. Xin lưu ý rằng bạn không thể sử dụng phương thức này theo mặc định và cần có một tiện ích kết xuất có khả năng hiểu được phần tử bố cục. (I6581d)
- Thêm tính năng hỗ trợ
StrokeCap
choArcLine
. (I94951) - Thêm tính năng hỗ trợ cho thao tác Tức thì có điều kiện. (I489a7)
- Thêm tính năng hỗ trợ cho thao tác Thời lượng có điều kiện. (Iab469)
- Thêm tính năng hỗ trợ tạo khoảng thời gian từ giây. (Ib5fa1)
Thay đổi về API
- Các phương thức
enable/disablePlatformSource
đã bị xoá khỏiDynamicTypeEvaluator
. Phương thức gọi phải chịu trách nhiệm cập nhật. (I78c6d) - Cho phép giới hạn kích thước của các loại dữ liệu được liên kết. (Ie2966)
- Thêm tính năng hỗ trợ cho nội dung mô tả động trong
protolayout-material
. (I62c8e) - Sử dụng long và
@IntRange
cho thời lượng và độ trễ trong AnimationParameters. (I388b6)
Phiên bản 1.0.0-alpha08
Ngày 19 tháng 4 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-alpha08
. Phiên bản 1.0.0-alpha08 bao gồm các thay đổi sau.
Tính năng mới
AndroidTextStyle
đã được thêm vàoLayoutElementBuilders
. (I8d967)- Chúng tôi đã thêm tính năng hỗ trợ việc đặt khoảng đệm loại trừ phông chữ trong Văn bản Material
ProtoLayout
. (I17f5d) - ARGB_8888 hiện được hỗ trợ cho hình ảnh nội tuyến. (I18c1e)
DynamicColor
hiện hỗ trợ thao táconCondition
. (I10927)
Thay đổi về API
- Hỗ trợ thời lượng tuỳ chỉnh cho ảnh động đảo ngược (I3251f)
- Chúng ta đã thêm đối tượng sửa đổi
SemanticDescription
. Ngoài ra,ContentDescription
không liên kết được. (I3f1d) - Phương thức
DynamicBool.isFalse()
hiện được thay thế bằngDynamicBool.negate()
vàDynamicBool.isTrue()
đã bị xoá. Ngoài ra, các giá trị NaNDynamicFloat
và việc thu hẹpDynamicInt32
thànhDynamicFloat
hiện sẽ phát ra một kết quả động không hợp lệ. (I6ac1e) - Trình định dạng số nguyên và số thực hiện sử dụng mẫu Trình tạo. (Ieb213)
Sửa lỗi
- Giá trị tĩnh dự phòng đã bị xoá khỏi các trường có thể tạo hiệu ứng. (Ifcb01)
- Xoá
DynamicTypeValueReceiver#onPreUpdate
. (I2dc35) - Độ dài của chuỗi trong biểu thức động hiện đã bị giới hạn. (I4c93)
- Giờ đây, các phần phụ thuộc gradle được đặt chính xác thành
api
thay vìimplementation
khi cần. (I40503)
Phiên bản 1.0.0-alpha07
Ngày 5 tháng 4 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-alpha07
. Phiên bản 1.0.0-alpha07 bao gồm các thay đổi sau.
Tính năng mới
- Thêm tính năng hỗ trợ giá trị động vào
StringProp
(I04342) - Đánh dấu các phần tử bố cục có thể liên kết (Ia110b)
Thay đổi về API
sensorGateway#registerSensorGatewayConsumer
lấy loại dữ liệu làm tham số thay vì phương thức trong Consumer. (Icf314)ObservableStateStore
đổi tên thànhStateStore
(Ieb0e2)- Đã thêm
DynamicTypeEvaluator.Builder
thay vì các đối số của hàm dựng để cho phép thêm nhiều đối số không bắt buộc, bao gồm cảObservableStateStore
hiện mặc định là một kho lưu trữ trống. (I6f832) - Đã tái cấu trúc thứ tự của các tham số trong
DynamicTypeEvaluator
. (Ic1ba4)
Sửa lỗi
- Truyền chính xác các tín hiệu từ nguồn cảm biến nền tảng đến các nút hạ lưu (I5a922)
Phiên bản 1.0.0-alpha06
Ngày 22 tháng 3 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-alpha06
. Phiên bản 1.0.0-alpha06 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi đã thêm một API thử nghiệm để sử dụng nhịp tim và số bước chân hằng ngày trong các biểu thức động (Ifd711)
- Chúng tôi đã thêm tính năng hỗ trợ độ trễ đảo ngược và chuyển tiếp cho ảnh động. (Ic25f7)
- Chúng tôi đã thêm tính năng hỗ trợ
DynamicColor
cho Đường viền và Nền - Chúng tôi đã thêm tính năng hỗ trợ giá trị động cho các loại trong
DimensionBuilder
- Bố cục và các thành phần từ
tiles-material
sẽ chuyển sangprotolayout-material
Thay đổi về API
LoadActionListener
đã được thêm vàoProtoLayoutViewInstance
. (If7806)
Sửa lỗi
- Thêm
FloatNodesTest
(Id7281) - Khắc phục sự cố trình kết xuất khi không tải được bitmap có cấu trúc.
Phiên bản 1.0.0-alpha05
Ngày 8 tháng 3 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-alpha05
. Phiên bản 1.0.0-alpha05 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi đã thêm một ảnh động "cập nhật nội dung" thử nghiệm vào đối tượng
Modifiers
. Ảnh động này sẽ kích hoạt bất cứ khi nào phần tử (có đối tượng sửa đổi này) hoặc một trong các phần tử con của phần tử đó thay đổi trong quá trình cập nhật bố cục. (bd03e5d)
Thay đổi về API
- Chúng tôi đã thêm
forwardRepeatDelayMillis
vàreverseRepeatDelayMillis
vàoRepeatable
. Chúng tôi cũng đã đổi têndelayMillis
trongAnimationSpec
thànhstartDelayMillis
(Ifb266) - Các phương thức
DynamicTypeEvaluator.bind
hiện chấp nhận một Trình thực thi. (I346ab) - Chúng tôi đã thêm phương thức
startEvaluation
vàoBoundDynamicType
để kích hoạt quá trình đánh giá sau khi loại động được liên kết. (I19908)
Sửa lỗi
- Đối tượng Animator sẽ được dùng lại cho các ảnh động tiếp theo của một phần tử. (Ia3be9)
Phiên bản 1.0.0-alpha04
Ngày 22 tháng 2 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-alpha04
. Phiên bản 1.0.0-alpha04 bao gồm các thay đổi sau.
Tính năng mới
- Giờ đây,
ObservableStateStore
cũng sẽ thông báo cho trình nghe khi một khoá bị xoá. - Chúng tôi đã thêm phiên bản giản đồ kết xuất đồ hoạ và tỷ lệ phông chữ vào
DeviceParameters
(có thể dùng để tạo bố cục theo điều kiện nhằm phản hồi nhiều phiên bản và chế độ cài đặt phông chữ). - Chúng tôi đã thêm tính năng hỗ trợ tạo ảnh động cho các giá trị
DynamicInt32
(I05485) - Chúng tôi đã thêm điều kiện kích hoạt
OnLoad
vàOnConditionalMet
. Bạn có thể dùng chúng để bắt đầu tạo ảnh động hỗ trợ điều kiện kích hoạt. - Chúng tôi đã thêm trọng số bố cục cho thứ nguyên mở rộng và kích thước tối thiểu cho thứ nguyên được bao bọc.
- Chúng tôi đã thêm các loại động thời điểm và khoảng thời gian. Bạn có thể dùng chúng để biểu thị một thời điểm hoặc khoảng thời gian trong một biểu thức động.
- Chúng tôi đã thêm tính năng hỗ trợ
AnimatedVectorDrawable
vàSeekableAnimatedVectorDrawable
dưới dạng tài nguyên bố cục.
Các thay đổi về API
- Dữ liệu cảm biến yêu cầu API 29 trở lên. (I8099e)
- Chúng tôi đã thêm 2 phương thức trợ giúp
launchAction
(để chạy Hoạt động).
Sửa lỗi
- Đổi tên
set/getSpec
thànhset/getAnimationSpec
trong ảnh động Thẻ thông tin (I3d74b)
Phiên bản 1.0.0-alpha03
Ngày 8 tháng 2 năm 2023
Phát hành androidx.wear.protolayout:protolayout-*:1.0.0-alpha03
. Phiên bản 1.0.0-alpha03 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi thêm
toByteArray()
vàfromByteArray()
vào các loại Dynamic trong thư viện protolayout-express. - Chúng tôi thêm
toString()
vào các loại Dynamic trong thư viện protolayout-expression. - Chúng tôi thêm tính năng hỗ trợ đánh giá cho các loại Dynamic. Bạn có thể sử dụng lớp
DynamicTypeEvaluator
từ thư viện protolayout-expression-pipeline để đánh giá (và nhận các giá trị cập nhật) cho một loại Dynamic tạo trước đó (DynamicString
,DynamicFloat
...) - Khi không thể phát ảnh động (do trình đánh giá đã tắt hoặc số ảnh động đang chạy đã đạt đến giới hạn đã đặt), các giá trị tĩnh được đặt trên nút có thể tạo ảnh động sẽ được dùng để thay thế ảnh động.
Phiên bản 1.0.0-alpha02
Ngày 25 tháng 1 năm 2023
Phát hành androidx.wear.protolayout:protolayout:1.0.0-alpha02
, androidx.wear.protolayout:protolayout-expression:1.0.0-alpha02
và androidx.wear.protolayout:protolayout-proto:1.0.0-alpha02
. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.
Tính năng mới
- Các trình xây dựng bố cục từ
androidx.wear.tiles:tiles
sẽ chuyển sangandroidx.wear.protolayout:protolayout
. Bản phát hành alpha tiếp theo sẽ không còn dùng các phần tử trongandroidx.wear.tiles:tiles
nữa.
Phiên bản 1.0.0-alpha01
Ngày 11 tháng 1 năm 2023
Phát hành androidx.wear.protolayout:protolayout-expression:1.0.0-alpha01
và androidx.wear.protolayout:protolayout-proto:1.0.0-alpha01
. Phiên bản 1.0.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Bản phát hành này giới thiệu một thư viện mới có tên "Biểu thức ProtoLayout" để tạo biểu thức từ các biến động.