Wear Compose
| 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 22 tháng 10 năm 2025 | 1.5.4 | - | - | 1.6.0-alpha04 |
Khai báo phần phụ thuộc
Để thêm một phần phụ thuộc trên Wear, bạn phải thêm kho lưu trữ Maven của Google vào dự án. Đọ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 { implementation "androidx.wear.compose:compose-foundation:1.5.4" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material:1.5.4" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.5.4" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.4") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
Kotlin
dependencies { implementation("androidx.wear.compose:compose-foundation:1.5.4") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material:1.5.4") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.5.4") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.4") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
Để 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.
Wear Compose Phiên bản 1.6
Phiên bản 1.6.0-alpha04
Ngày 22 tháng 10 năm 2025
Phát hành androidx.wear.compose:compose-*:1.6.0-alpha04. Phiên bản 1.6.0-alpha04 bao gồm các thay đổi sau.
Thay đổi về API
- Triển khai
reverseLayoutchoTransformingLazyColumn(I19f9e, b/352513793) - Thêm
ConfirmationDialogDefaults.VariantFailureIconđể sử dụng trongFailureConfirmationDialog. Trong một số trường hợp, bạn có thể ưu tiên sử dụng biểu tượng lỗi chung mới này thay vì biểu tượngConfirmationDialogDefaults.FailureIconcho biết kết nối với điện thoại bị gián đoạn. (Ifc851, b/443115305)
Sửa lỗi
- Cải thiện hiệu suất của Trình chọn bằng cách tái cấu trúc việc sử dụng
LaunchedEffect. (I94519, b/418192973) - Đã sửa một lỗi trong
SwipeDismissableNavHosttrên API 36 trở lên, trong đó thao tác nhấn nút quay lại trong ảnh động xem trước thao tác quay lại sẽ làm gián đoạn và khởi động lại ảnh động. Quy trình triển khai hiện sử dụngSeakableTransitionState.animateTothay vì Animatable, giúp cải thiện hiệu suất một chút. (I2241f, b/428156670) - Khắc phục lỗi về thứ tự thông báo hỗ trợ tiếp cận trong
AlertDialog, trong đó nút xác nhận được thông báo là "Button. Xác nhận" thay vì "Xác nhận" tiêu chuẩn. Nút". (Ic2381, b/429378202) - Cải thiện khả năng hiển thị số
TimePickertrên màn hình nhỏ. (I68386, b/447625365) - Xoá nhánh Bố cục lười biếng khỏi Wear Compose Foundation – điều này có nghĩa là
TransformingLazyColumnhiện sử dụng chế độ triển khai Bố cục lười biếng của Compose Foundation, bao gồm cả việc tìm nạp trước và hưởng lợi từ việc cải thiện hiệu suất về thời gian khung trong hầu hết các trường hợp. (Idd743, b/445911630)
Phiên bản 1.6.0-alpha03
Ngày 8 tháng 10 năm 2025
Phát hành androidx.wear.compose:compose-*:1.6.0-alpha03. Phiên bản 1.6.0-alpha03 bao gồm các thay đổi sau.
Thay đổi về API
- Thêm tham số vào
TimePickerđể chỉ định thành phần thời gian được lấy làm tiêu điểm ban đầu. Lựa chọn mặc định là thành phần có sẵn đầu tiên dựa trên ngôn ngữ vàTimePickerType. (Ie5dfe, b/437015874) - Xoá tham số
targetProgresskhông dùng đến trong phương thứcCircularProgressIndicatordrawCircularProgressIndicator. (Ieeb3c, b/430544552)
Sửa lỗi
- Triển khai tính năng hỗ trợ còn thiếu cho
TransformingLazyColumnverticalAlignment– hiện hỗ trợ các bố cục tiêu chuẩn dựa trên vị trí trên cùng, dưới cùng hoặc ở giữa. (I2e630, b/444143326) - Cải thiện việc tính toán chiều rộng của văn bản cong để tính đến khoảng trống trước và sau văn bản (có thể làm hỏng ảnh chụp màn hình có văn bản cong, đặc biệt là khi văn bản có nền như
TimeText). (I924a4, b/446601899) - Đã cập nhật
WarpedCurvedTextRenderercủa Compose Foundation để chọnEmojiCompatInitializertừandroidx.emoji2nhằm khắc phục lỗi lớp thời gian chạy. (I589b4, b/444422736) - Đã cập nhật
ScalingLazyColumnđể tập trung vào nút có thể cuộn bằngCollectionInfo, nhờ đó, nút này hoạt động với bộ chọn xoay trong nhiều ngữ cảnh hơn, chẳng hạn như trênMaterial3AlertDialog. (I6be3c, b/445332360)
Phiên bản 1.6.0-alpha02
Ngày 24 tháng 9 năm 2025
Phát hành androidx.wear.compose:compose-*:1.6.0-alpha02. Phiên bản 1.6.0-alpha02 bao gồm các thay đổi sau.
Thay đổi về API
- Cải thiện khả năng hiển thị văn bản cong, đặc biệt là đối với phông chữ viết tay, bằng cách giới thiệu tính năng làm cong văn bản bằng tham số
CurvedTextStylemớiwarpOffset. (If5dcb)
Sửa lỗi
- Tối ưu hoá việc lưu vào bộ nhớ đệm ảnh động của mục trong khi cuộn trong
TransformingLazyColumn. (I62ae8) - Các biến thể
OpenOnPhoneDialogvàConfirmationDialogđã được cập nhật để đặtFLAG_KEEP_SCREEN_ON, nhờ đó ảnh động chạy đến khi hoàn tất và các hộp thoại tự đóng theo đúng dự kiến. (Iad7d4) - Khắc phục lỗi
Modifier.edgeSwipeToDismissgặp sự cố khi được dùng vớiSwipeDismissableNavHosttrên API 36 trở lên. (Ifc13d) - Cập nhật tài liệu và nhận xét liên quan đến tham số
CurvedTextStyle warpOffsetmới để tham chiếu chính xác đến trường hợp Không xác định. (I41aa5)
Phiên bản 1.6.0-alpha01
Ngày 10 tháng 9 năm 2025
Phát hành androidx.wear.compose:compose-*:1.6.0-alpha01. Phiên bản 1.6.0-alpha01 bao gồm các thay đổi sau.
Thay đổi về API
- Đã thêm các biến thể không thể nhấp cho
Card,TitleCard,OutlinedCardvàAppCard(I509bb, b/406690146) - Xoá tham số
interactionSourcekhỏi các API thẻ không nhấp được mới. (If0c7a, b/440323280) - Thêm một loại
MinutesSecondsmới vào thành phầnTimePicker. Loại này chỉ hiển thị cột phút và giây, bỏ qua cột giờ (Ia9e94, b/438004664)
Sửa lỗi
- Sửa việc sử dụng
HorizontalPagerScaffoldcủa tham số đối tượng sửa đổi đểHorizontalPagerkhông mất chỉ báo trang nếu thêmModifier.fillMaxSize()(I07ae1, b/441682601) - Căn chỉnh hướng
ScrollIndicatortheo hướng bố cục nội dung theo mặc định. (I0da0f, b/441489028) - Khắc phục vấn đề về
ScrollAwaykhi dùng vớiTransformingLazyColumn.TimeTextkhông cuộn đúng cách sau khi chuyển đến một màn hình khác rồi quay lại. (Ic0ef1, b/433549148) - Đã sửa báo cáo
TransformingLazyColumnvề ngữ nghĩaSCROLL_BACKWARDSvàSCROLL_FORWARDScho các trường hợp đặc biệt ở đầu/cuối màn hình. (I5c28d, b/405205994) - Khắc phục lỗi trong
SwipeDismissableNavHostkhiến các hiệu ứng chuyển đổi đang diễn ra không được đánh dấu là đã hoàn tất sau khi vuốt ngược lại trên API 36. (Ife72e, b/441089689) - Cập nhật
OpenOnPhoneMaxSweepAnglemặc định thành 200 độ để tránh một số bản dịch của "Kiểm tra điện thoại" bị cắt bớt. (Ib2e4c, b/428243902)
Wear Compose phiên bản 1.5
Phiên bản 1.5.4
Ngày 22 tháng 10 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.4. Phiên bản 1.5.4 bao gồm các thay đổi sau.
Sửa lỗi
- Cải thiện hiệu suất của Trình chọn bằng cách tái cấu trúc việc sử dụng
LaunchedEffect. (I94519, b/418192973) - Đã sửa một lỗi trong
SwipeDismissableNavHosttrên API 36 trở lên, trong đó thao tác nhấn nút quay lại trong ảnh động xem trước thao tác quay lại sẽ làm gián đoạn và khởi động lại ảnh động. Quy trình triển khai hiện sử dụngSeakableTransitionState.animateTothay vì Animatable, giúp cải thiện hiệu suất một chút. (I2241f, b/428156670) - Khắc phục lỗi về thứ tự thông báo hỗ trợ tiếp cận trong
AlertDialog, trong đó nút xác nhận được thông báo là "Button. Xác nhận" thay vì "Xác nhận" tiêu chuẩn. Nút". (Ic2381, b/429378202)
Phiên bản 1.5.3
Ngày 8 tháng 10 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.3. Phiên bản 1.5.3 bao gồm các thay đổi sau.
Sửa lỗi
- Triển khai tính năng hỗ trợ còn thiếu cho
TransformingLazyColumnverticalAlignment– hiện hỗ trợ các bố cục tiêu chuẩn dựa trên vị trí trên cùng, dưới cùng hoặc ở giữa. (I2e630, b/444143326)
Phiên bản 1.5.2
Ngày 24 tháng 9 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.2. Phiên bản 1.5.2 bao gồm các thay đổi sau.
Sửa lỗi
- Tối ưu hoá việc lưu vào bộ nhớ đệm ảnh động của mục trong khi cuộn trong
TransformingLazyColumn. (I62ae8) - Các biến thể
OpenOnPhoneDialogvàConfirmationDialogđã được cập nhật để đặt FLAG_KEEP_SCREEN_ON, nhờ đó, các ảnh động sẽ chạy đến khi hoàn tất và các hộp thoại sẽ tự động đóng theo đúng dự kiến. (Iad7d4) - Khắc phục lỗi
Modifier.edgeSwipeToDismissgặp sự cố khi được dùng vớiSwipeDismissableNavHosttrên API 36 trở lên. (Ifc13d) - Cập nhật tài liệu và nhận xét liên quan đến tham số
CurvedTextStyle warpOffsetmới để tham chiếu chính xác đến trường hợp Không xác định. (I41aa5)
Phiên bản 1.5.1
Ngày 10 tháng 9 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.1. Phiên bản 1.5.1 bao gồm các thay đổi sau.
Sửa lỗi
- Sửa lỗi khi
HorizontalPagerScaffoldsử dụng tham số đối tượng sửa đổi để HorizontalPager không mất chỉ báo trang nếu thêmModifier.fillMaxSize()(I07ae1, b/441682601) - Căn chỉnh hướng
ScrollIndicatortheo hướng bố cục nội dung theo mặc định. (I0da0f, b/441489028) - Khắc phục vấn đề về
ScrollAwaykhi dùng vớiTransformingLazyColumn.TimeTextkhông cuộn đúng cách sau khi chuyển đến một màn hình khác rồi quay lại. (Ic0ef1, b/433549148) - Đã sửa báo cáo
TransformingLazyColumnvề ngữ nghĩaSCROLL_BACKWARDSvàSCROLL_FORWARDScho các trường hợp đặc biệt ở đầu/cuối màn hình. (I5c28d, b/405205994) - Khắc phục lỗi trong
SwipeDismissableNavHostkhiến các hiệu ứng chuyển đổi đang diễn ra không được đánh dấu là đã hoàn tất sau khi vuốt ngược lại trên API 36. (Ife72e, b/441089689) - Cập nhật
OpenOnPhoneMaxSweepAnglemặc định thành 200 độ để tránh một số bản dịch của "Kiểm tra điện thoại" bị cắt bớt. (Ib2e4c, b/428243902)
Phiên bản 1.5.0
Ngày 27 tháng 8 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0. Phiên bản 1.5.0 bao gồm các thay đổi sau.
Thay đổi quan trọng kể từ phiên bản 1.4.0
Bản phát hành đầu tiên của thư viện Wear Compose Material 3, hỗ trợ hệ thống thiết kế Material 3 Expressive mới. Bản phát hành này bao gồm:
- Cập nhật
MaterialThemevà giao diện màu động. - Các thành phần
AppScaffold, ScreenScaffold,HorizontalPagerScaffoldvàVerticalPagerScaffoldmới để bố trí cấu trúc của màn hình và điều phối ảnh độngScrollIndicator,TimeText,HorizontalPageIndicatorvàVerticalPageIndicator. - Hình dạng biến đổi
IconButton,TextButton,IconToggleButtonvàTextToggleButton, với các biến thể có hiệu ứng khi được nhấn hoặc đánh dấu. EdgeButtoncó hình dạng đặc biệt được thiết kế cho cuối màn hình.ButtonGrouptriển khai một nhóm nút biểu cảm, trong một hàng có hình dạng biến đổi khi chạm vào.AlertDialogvàConfirmationDialogcó các biến thể cho nội dung hộp thoại bổ sung.- Thành phần
TimePickervàDatePicker. - Chỉ báo tiến trình bao gồm
CircularProgressIndicator(có biến thể phân đoạn),ArcProgressIndicatorvàLinearProgressIndicator.
Ngoài ra, Wear Compose Foundation 1.5.0 còn có những thành phần sau:
TransformingLazyColumn, một danh sách cuộn theo chiều dọc, có độ trễ, hỗ trợ các hình ảnh động thu nhỏ và biến đổi.- Hỗ trợ phân trang trong Wear Compose Foundation bằng
HorizontalPagervàVerticalPager. - Nhóm tiêu điểm theo hệ phân cấp – dùng để chú thích các thành phần kết hợp trong một ứng dụng nhằm theo dõi phần đang hoạt động của thành phần và điều phối tiêu điểm.
Đọc thêm về (Material 3 Expressive cho Wear OS)
Các thay đổi khác
- Để xem danh sách đầy đủ hơn về các tính năng được giới thiệu trong phiên bản 1.5.0, hãy xem (ghi chú phát hành beta01).
Phiên bản 1.5.0-rc02
Ngày 13 tháng 8 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-rc02. Phiên bản 1.5.0-rc02 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục một lỗi trong
TimePicker, trong đó các chuỗi dài, được quốc tế hoá cho khoảng thời gian (AM/PM) có thể làm hỏng bố cục. (I0fa81)
Phiên bản 1.5.0-rc01
Ngày 30 tháng 7 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-rc01. Phiên bản 1.5.0-rc01 bao gồm các thay đổi sau.
Sửa lỗi
TimePickerhiện hoàn toàn dựa vào ngôn ngữ của người dùng, sử dụngDateFormat.getBestDateTimePatternđể xác định thứ tự và nội dung của bộ chọn và dấu phân cách. Điều này khắc phục tình trạng sắp xếp cột không chính xác cho các ngôn ngữ CJK, giải quyết các vấn đề về bố cục RTL trong các ngôn ngữ như tiếng Ả Rập, sử dụng dấu phân cách theo ngôn ngữ và hỗ trợ cả định dạng 0-11 giờ và 1-12 giờ dựa trên ngôn ngữ (I5d543)DatePickerhiện hiển thị tháng bằng số ở một số ngôn ngữ, chẳng hạn như tiếng Trung, tiếng Nhật và tiếng Hàn để tránh trộn lẫn định dạng số và ngôn ngữ (ví dụ: 2025 | 07 | 02 thay vì 2025 | 7月 | 02). Thay đổi này áp dụng một phương pháp phỏng đoán để kiểm tra xem ngôn ngữ có sử dụng hậu tố ngôn ngữ cho năm hay không. Nếu có, phương pháp này sẽ chuyển đổi định dạng tháng từ dạng văn bản (MMM) sang dạng số (MM) để đảm bảo tính nhất quán. (Ia93fe)- Giờ đây, khoảng trống dọc cho tiêu đề trong thành phần Bộ chọn là hằng số, ngăn chặn sự thay đổi có thể nhìn thấy khi một cột bộ chọn được chọn, đặc biệt là ở chế độ
Talkback. (I7f8b7) - Khắc phục một lỗi hỗ trợ tiếp cận do
HorizontalPageIndicatorvàVerticalPageIndicatorđược vẽ ở chế độ toàn màn hình. Các chỉ báo trang không còn ở chế độ toàn màn hình và sẽ được đặt tự động khi dùng vớiHorizontalPagerScaffoldhoặcVerticalPagerScaffold. Khi không dùng khung sườn của trình phân trang, hãy chỉ định rõ ràng căn chỉnh bằng cách dùngmodifier = Modifier.align(Alignment.BottomCenter)vớiHorizontalPageIndicatorvàmodifier =Modifier.align(Alignment.CenterEnd)vớiVerticalPageIndicator. (I3a0ad) - Hướng vuốt trong
SwipeToRevealhiện nhất quán cho cảLayoutDirectionsLTR và RTL. (I6d427) - Khôi phục chế độ căn giữa theo chiều dọc
SwipeToRevealcho các thao tác. NếuhasPartiallyRevealedState = true,RevealState, thì người gọi phải đặt lại thànhRevealValue.Coveredkhi xảy ra thao tác cuộn. (I6473d) SwipeDismissableNavHosthiện cắt nội dung chính xác cho API 36 trở lên. (Ib9a44)
Phiên bản 1.5.0-beta06
Ngày 16 tháng 7 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-beta06. Phiên bản 1.5.0-beta06 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục ảnh động
EdgeButtonkhiLazyColumnhoặcScalingLazyColumncóreverseLayout = true. (I46a1a) - Khắc phục lỗi trong
ScreenScaffoldkhi tính năng chạm để khám phá không hoạt động trong TalkBack nếuScrollIndicator/PageIndicatorđược cung cấp. (I6dcee) TransformingLazyColumnhiện cho phép biến đổi tuỳ chỉnh từTransformationSpecbằng cách đọc giá trịitemHeightdoTransformationSpeccung cấp trong trình vẽ nền. (I6a599)- Ảnh động chuyển đổi màu bật/tắt cho
IconButton, để nhất quán vớiIconToggleButton. (Ife10a) - Xoá tính năng kẹp phần tối thiểu trong
CircularProgressIndicatorđể tránh hiện tượng nhảy đáng chú ý sang kích thước chấm tối thiểu khi tạo hiệu ứng chuyển động. Trong quá trình thay đổi này, tham sốtargetProgresstrongdrawCircularProgressIndicatorhiện không được dùng nữa. (I33309) - Giờ đây, Bộ chọn có vai trò ngữ nghĩa
ValuePickermà trình đọc màn hình có thể dùng để giúp bộ chọn dễ sử dụng hơn. Bộ chọn cũng có nhãn nhấp chuột hỗ trợ tiếp cận mới, phân biệt giữa việc điều chỉnh giá trị ở chế độ chỉ đọc và chọn giá trị hiện tại. (I33309)
Phiên bản 1.5.0-beta05
Ngày 2 tháng 7 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-beta05. Phiên bản 1.5.0-beta05 bao gồm các thay đổi sau.
Sửa lỗi
- Cập nhật tài liệu để làm rõ cách sử dụng
Modifier.edgeSwipeToDismiss(I78cb5) - Khắc phục lỗi trong đó nhiều mục được hiển thị có thể xuất hiện cùng với
SwipeToRevealtrong danh sách tải từng phần (I1d4f6) - Các hình dạng vùng chứa trong
TransformingLazyColumnhiện được điều chỉnh tỷ lệ để tránh cắt nội dung. (I9221a) - Nhãn
TimePickervàDatePickercho giờ/phút/giây hoặc năm/tháng/ngày hiện có ngữ nghĩa tiêu đề cho trình đọc màn hình (I77d8b) - Đã xoá khoảng tạm dừng giữa các vòng lặp trong
CircularProgressIndicatorkhông xác định (Iaf0bb) - Khắc phục lỗi ảnh động trong
TransformingLazyColumnkhi các mục bị xoá. (I73034) - Đã sửa cách xử lý các mục neo trong
TransformingLazyColumnkhi các mục bị xoá. (I841a8) PickerGrouphiện sẽ tạo hiệu ứng cho Bộ chọn theo chiều ngang khi bạn bật tính năng tự động căn giữa và thay đổi bộ chọn đã chọn (được căn giữa). (Ic82c4)
Phiên bản 1.5.0-beta04
Ngày 18 tháng 6 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-beta04. Phiên bản 1.5.0-beta04 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục lỗi bố cục trong
TransformingLazyColumn, trong đó nội dung vừa với màn hình hiện được căn chỉnh chính xác từ đầu màn hình (I80115) - Khắc phục vấn đề với
TransformingLazyColumnkhi mục dưới cùng bị thu nhỏ không chính xác khi cuộn xuống cuối danh sách cóEdgeButton. Giờ đây, tiến trình cuộn tuân theo độ dốc giảm dần khi khôi phục bố cục. (Iea375) TransformingLazyColumnhiện đọc chiều cao của mục trong trình vẽ nền, cho phépTransformationSpecstuỳ chỉnh triển khai hiệu ứng biến đổi. (I022f0)SwipeToRevealhiện căn giữa các thao tác được hiển thị theo chiều dọc một cách chính xác. (I4419b)- Đã khắc phục một lỗi trong
SwipeToRevealkhiến lỗi này không hoạt động đúng cách với thao tác vuốt để đóng nếu cả khung hiển thị và thành phần đều đang được dùng trên màn hình. (I5dc0e) - Khắc phục lỗi khiến các thao tác
SwipeToRevealđược vẽ với độ lệch dọc khi cuộn. (I29444) AlertDialog,ConfirmationDialog,OpenOnPhoneDialogvàSwipeToRevealhiện làm tròn phần đệm và kích thước được tính theo tỷ lệ phần trăm kích thước màn hình. (I76367)ButtonDefaults.outlinedButtonBorderhiện cập nhật kích thước theo các thay đổi về trạng thái bật/tắt(If2ddd)- Khắc phục lỗi chiều cao
EdgeButtonxảy ra trên các màn hình phức tạp có Pager vàScreenScaffold. (I946e3) - Khắc phục một điều kiện thực hiện có thể khiến ảnh động Trình giữ chỗ dừng lại. (I53530)
- Cải thiện hiệu suất của
HorizontalPageIndicatorvàVerticalPageIndicatorbằng cách vẽ vào Canvas. (Ifae1e) - Tinh chỉnh hình dạng của EdgeButton để chuyển đổi mượt mà giữa dấu ba chấm và các vòng tròn tạo nên đường viền. (I7721e)
- Khắc phục một lỗi trong
LevelIndicatorkhiến ảnh động dừng lại do việc kết hợp lại không cần thiết. (I45d08)
Phiên bản 1.5.0-beta03
Ngày 4 tháng 6 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-beta03. Phiên bản 1.5.0-beta03 bao gồm các thay đổi sau.
Thay đổi về API
- Giờ đây,
OpenOnPhoneDialogchỉ thông báo văn bản của tin nhắn trong TalkBack và bỏ qua ngữ nghĩa của biểu tượng.OpenOnPhoneDialogDefaultsđã được cập nhật để xoáiconContentDescriptionvà tham sốcontentDescriptionkhỏiicon(). Ngoài ra,ConfirmationDialogDefaultshiện có các tham số đối tượng sửa đổi trên thành phần kết hợpSuccessIconvàFailureIcon. (Id2ae2)
Sửa lỗi
- Thay đổi thứ tự áp dụng hiệu ứng của các tham số
SurfaceTransformation. Trước đây, các phép biến đổi được áp dụng cho các thành phần Wear Material3 được thực hiện như sau: trình vẽ nền, phép biến đổi vùng chứa, phép biến đổi nội dung. Giờ đây, 2 thành phần đầu tiên bị đảo ngược và chúng ta áp dụng mọi đối tượng sửa đổi được truyền vào giữa chúng, vì vậy, đối tượng sửa đổi này sẽ chịu ảnh hưởng của các phép biến đổi vùng chứa. Điều này khắc phục các trường hợp như sử dụng hiệu ứng lấp lánh của phần giữ chỗ với các phần tử trong TLC bằng cách sử dụng tham số biến đổi. (I786cf) RevealState.Saverđược thêm vào để dùng khôi phục trạng thái củaSwipeToRevealkhi hoạt động hoặc quy trình được tạo lại. HàmrememberRevealStatehiện sử dụng Trình tiết kiệm này theo mặc định. (Ie0ecb)- Các nút hành động chính và phụ
SwipeToRevealphải mặc định làButtonDefault.Height(đã sửa lỗi khi các nút này lấp đầy chiều cao tối đa cho các nút cao hơn). (Ibfba1) - Đã thay đổi
SwipeToRevealđể đặt lại thành phần gần đây nhất mà người dùng tương tác, khi người dùng thực hiện cử chỉ vuốt sang phải. (Ia8450) SwipeToRevealđã được thay đổi để chuyển sang trạng tháiRevealingkhi vị trí cuối của thao tác vuốt nằm giữa các điểm neo hiển thị và điểm neo đã hiển thị, đồng thời gần với điểm neo Hiển thị hơn. (If4458)- Giờ đây, nội dung của
ButtonGroupđược đảo ngược đúng cách trong bố cục RTL (Ib378d) AnimatedTexthiện hỗ trợ hướng văn bản RTL (I4533c)TransformingLazyColumnhiện đổi kích thước các mục một cách chính xác khi mục dưới cùng bị xoá (Idacab)TransformingLazyColumnhiện chỉ thực hiện một lần đo, giúp cải thiện hiệu suất bằng cách giảm thời gian khung hình. (I501a1)
Phiên bản 1.5.0-beta02
Ngày 20 tháng 5 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-beta02. Phiên bản 1.5.0-beta02 bao gồm các thay đổi sau.
Sửa lỗi
- Cập nhật hồ sơ cơ sở cho các thư viện foundation, material và material3. (I53f06)
- Khắc phục lỗi trong
TransformingLazyColumn, trong đó các mục được đổi kích thước khi mục dưới cùng bị xoá. (Idacab) - Đã khắc phục một lỗi với
TransformingLazyColumn, khi danh sách bị kẹt ở đầu hoặc cuối danh sách. (I49d00) OpenOnPhoneDialogtrong TalkBack sẽ thông báo văn bản cong thay vì nội dung mô tả biểu tượng. (I4efe8)- Khắc phục một lỗi trong
SwipeToReveal, lỗi này sẽ báo cáo sai giá trị cố định trongRevealState.currentValuekhihasPartiallyRevealedStateđược đặt thành false. (I9c7cf) - Các nút
SwipeToRevealhuỷ hiện làButtonDefaults.Heighttheo mặc định. (I1f6c8) - Hiệu suất của
BasicSwipeToDismissBoxđã được cải thiện bằng cách loại bỏ việc sử dụng Canvas để vẽ các lớp phủ. (I68f2c) - Đã sửa một lỗi hỗ trợ tiếp cận trong Thanh trượt, trong đó tỷ lệ phần trăm được thông báo không khớp với giá trị sau khi cập nhật (I91146)
- Khắc phục một lỗi khi triển khai
placeholderShimmer. (Iee39b - Hiệu suất của
TransformingLazyColumnđã được cải thiện bằng cách tối ưu hoá việc tính toánScrollProgressthêm 30%. (I4c4cb)
Phiên bản 1.5.0-beta01
Ngày 7 tháng 5 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-beta01. Phiên bản 1.5.0-beta01 bao gồm các thay đổi sau.
Bản phát hành 1.5.0-beta01 của Compose cho Wear OS 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 Compose 1.5.0-beta01 bao gồm thư viện Wear Compose Material3, hỗ trợ hệ thống thiết kế giao diện người dùng mới có tên là Material 3 Expressive. Bạn nên nâng cấp từ Material lên Material3 để áp dụng thiết kế trực quan mới trong các ứng dụng và tận dụng các thành phần mới như sau:
MaterialThemeđể cập nhật và mở rộng bảng phối màu, kiểu chữ và hình dạng nhằm mang lại cả chiều sâu và sự đa dạng cho thiết kế của bạn.- Chủ đề màu linh động tự động tạo một bảng phối màu cho ứng dụng của bạn sao cho phù hợp với màu của mặt đồng hồ.
- Theo mặc định, các thành phần mới sẽ tự động điều chỉnh cho phù hợp với kích thước màn hình lớn hơn
- Biến đổi hình dạng – các thành phần nút tròn như
IconButton,TextButton,IconToggleButtonvàTextToggleButtonhỗ trợ các biến thể có ảnh động khi được nhấn hoặc đánh dấu. EdgeButton– một nút mới ôm sát cạnh có hình dạng đặc biệt được thiết kế cho cuối màn hình.- Scaffold – giới thiệu
AppScaffoldvàScreenScaffoldđể bố trí cấu trúc của màn hình và điều phối ảnh độngScrollIndicatorvàTimeText. - Nút – hỗ trợ nhiều nút có hình dạng sân vận động với các vùng chứa linh hoạt, một khe và nhiều biến thể khe cho các nút có biểu tượng và nhãn.
CheckboxButtonvàSwitchButtonđược cung cấp khi cần có nút bật/tắt, trong khiRadioButtonlà nút lựa chọn có sẵn (các biến thể "Chia" của nút bật/tắt và nút lựa chọn cũng được cung cấp). ButtonGroup– triển khai một nhóm nút biểu cảm theo hàng, có hình dạng biến đổi khi chạm vào.- Các biến thể
AlertDialoghỗ trợ nút ok/cancel hoặcEdgeButton. ConfirmationDialogcó sẵn để hiển thị một thông báo có thời gian chờ, hỗ trợ các hiệu ứng đặc biệt cho các biến thể thành công, thất bại và mở trên điện thoại.- Bộ chọn – Các biến thể
TimePickervàDatePickercũng như các thành phần Bộ chọn vàPickerGroupđều được hỗ trợ để tạo màn hình bộ chọn của riêng bạn. ProgressIndicators– chỉ báo tiến trình hình tròn và tuyến tính được hỗ trợ (CircularProgressIndicatorcó các biến thể phân đoạn và không xác định).- Thẻ – có một số biến thể thẻ, bao gồm cả
TitleCard. Biến thể này cung cấp các bố cục cụ thể cho thẻ có tiêu đề, thời gian, phụ đề hoặc ô nội dung.TitleCardcũng có thể có nền là hình ảnh để củng cố ý nghĩa của thông tin trong thẻ. - Pager – Các thành phần
HorizontalPagerScaffold,VerticalPagerScaffoldvàAnimatedPageđiều phối ảnh độngHorizontalPageIndicatorvàVerticalPagerIndicator.HorizontalPagervàVerticalPagerđược phát hành trong thư viện Wear Compose Foundation. - Phần giữ chỗ – vẽ một hình dạng khung trên một thành phần, trong trường hợp không có nội dung tạm thời.
- Thanh trượt và Stepper – cả thanh trượt và stepper đều cho phép người dùng lựa chọn trong một phạm vi các giá trị. Thanh trượt nhỏ gọn hơn và có thể được phân đoạn, trong khi Stepper là một thành phần toàn màn hình thường được ghép nối với một
StepperLevelIndicator. SwipeToReveal– dùng để thêm các thao tác khác vào một thành phần kết hợp khi thành phần đó được vuốt từ phải sang trái.
Ngoài ra, Wear Compose Foundation 1.5.0-beta01 còn có các thành phần mới sau:
TransformingLazyColumn– một danh sách cuộn theo chiều dọc, có độ trễ, hỗ trợ các hoạt ảnh thu phóng và biến đổi- Nhóm tiêu điểm theo hệ phân cấp – dùng để chú thích các thành phần kết hợp trong một ứng dụng, nhằm theo dõi phần đang hoạt động của thành phần và điều phối tiêu điểm.
- Pager – Các thành phần
HorizontalPagervàVerticalPager, được xây dựng dựa trên các thành phần Compose Foundation với những điểm cải tiến dành riêng cho Wear để cải thiện hiệu suất và tuân thủ các nguyên tắc của Wear OS.
Thay đổi về API
- Cập nhật API Lấy tiêu điểm theo hệ phân cấp – đổi tên
Modifier.hierarchicalFocusthànhModifier.hierarchicalFocusGroupvà xoá tham số lệnh gọi lại; xoá hàm nạp chồng củaModifier.hierarchicalFocusRequesterbằng tham sốFocusRequester; tạoCompositionLocal,LocalScreenIsActivemới để các thành phần có thể thông báo và kiểm tra xem màn hình nào đang hoạt động. (I5ff7c). - Ngừng sử dụng
SwipeToRevealtrong Wear Compose Foundation để chuyển sang các APISwipeToRevealtrong Wear Compose Material và Wear Compose Material3. Vui lòng thay thế các mục nhập Wear FoundationSwipeToRevealbằng các mục nhập Wear Compose Material/ Wear Compose Material3 để tiếp tục sử dụng các API. (Ia147d). - Các phần phụ thuộc
SwipeToRevealWear Compose Material3 trên Foundation đã được chuyển sang gói material3, ví dụ:RevealValue,RevealDirection,RevealActionType,RevealState,rememberRevealState. Nhà phát triển nên thay đổi các hoạt động nhập của những lớp và hàm này từandroidx.wear.compose.foundationthànhandroidx.wear.compose.material3. (I640e6). - Đã cập nhật API
SwipeToRevealWear Compose Material3 như sau: thêm các tham sốprimaryAction,onFullSwipe,secondaryAction,undoPrimaryAction,undoSecondaryActionvàhasPartiallyRevealedStatevào thành phần kết hợpSwipeToReveal; xoá khả năng tuỳ chỉnhpositionalThresholdvàanimationSpeckhỏiRevealState; xoálastActionType,revealThresholdvà chiều rộng khỏiRevealState; thay đổi hàm khởi tạoRevealStateđể chấp nhậnRevealDirectionthay vì các điểm neo; xoá các hàmcreateRevealAnchors, điểm neo vàbidirectionalAnchors; các hàmSwipeToRevealScopeprimaryAction,secondaryAction,undoPrimaryActionvàundoSecondaryActionđược đổi tên thànhPrimaryActionButton,SecondaryActionButton,UndoActionButtonvà được chuyển thành các hàm có thể kết hợp; đánh dấuRevealActionTypelà nội bộ. (I885d0). - Cập nhật thêm API
SwipeToRevealnhư sau: đổi tênonFullSwipethànhonSwipePrimaryAction; đổi tênSwipeToRevealNonAnchoredSampleđể cho biết việc sử dụng tham sốhasPartiallyRevealedState; xoáactionButtonHeightvì giá trị mặc định là chiều cao mặc định của Nút và bạn có thể đặt chiều cao lớn hơn bằng cách sử dụng một đối tượng sửa đổi; xoáSmallActionButtonHeightkhỏiSwipeToRevealDefaults; đặt tham số giá trị trong hàm khởi tạoRevealValuevàRevealDirectionthành riêng tư. (I465ce).
Sửa lỗi
- Đã khắc phục cách xử lý
EdgeButtoncủaScreenScaffoldđể sau khi một mụcTransformingLazyColumnbị xoá,EdgeButtonsẽ được chuyển động vào đúng vị trí. (I6d366). - Cập nhật các phần phụ thuộc của Wear Compose trên các thư viện Compose lên phiên bản 1.8.0. (I2ef3f).
- Cập nhật chuyển động của
CircularProgressIndicatorkhông xác định để không còn tạm thời hồi quy. (Ieddb1). - Sửa lỗi
SwipeDismissableNavHost– tiêu điểm không chuyển đổi đúng cách sau khi vuốt ngược lại, khiến thao tác nhập bằng bộ mã hoá xoay không thành công (lỗi này xảy ra đối với API 36 trở lên, sử dụng tính năng xem trước thao tác quay lại). (Ieddb1). - Tài liệu sửa đổi cho Hierarchical Focus API (Idf2ff).
- Cập nhật tài liệu cho Nút và Thẻ để nêu cách
containerPaintervàdisabledContainerPainterghi đècontainerColorvàdisabledContainerColor(I4a453). - Huỷ bỏ một thay đổi đối với
TimeTexttrong bản phát hành trước đó (chuyểnBroadcastReceiversang một luồng worker), vì thay đổi này gây ra vấn đề cho những ứng dụng tự quản lý việc tạo luồng trong quá trình điều hướng. (I34d02). - Cập nhật các mẫu Trình chọn để xoá các lệnh gọi remember không cần thiết và thay vào đó, hãy dùng
rememberUpdatedStatetrong Trình chọn để ghi nhớ hàm lambdacontentDescriptionmới nhất. (Icb5b1). - Đã cập nhật kiểu văn bản trong
TimePickervàDatePickerđể các thay đổi về phông chữ không còn dẫn đến việc cắt bớt văn bản nữa. (I26194). ListHeadervàListSubHeaderhiện căn chỉnh văn bản theo mặc định lần lượt là căn giữa và căn trái. (I78339).- Đã cập nhật các mẫu và bản minh hoạ Foundation và Material Swipe to Reveal để thông báo các thao tác hỗ trợ tiếp cận tuỳ chỉnh (bạn phải thêm các thao tác tuỳ chỉnh dưới dạng ngữ nghĩa trên nội dung chứ không phải trên thành phần kết hợp
SwipeToReveal). (Ie92a3). - Đã cập nhật
MaxLinesmặc định được đặt trên nội dungEdgeButtontheo kích thước của nội dung đó – hiện là 1 cho kích thước cực nhỏ, 2 cho kích thước nhỏ và trung bình, và 3 cho kích thước lớn. (Ie35f6). - Đơn giản hoá
LocalReduceMotionđể chỉ đăng ký một lần cho trình theo dõi, nhằm cải thiện hiệu suất. (Ib1979). - Giảm thiểu số lần vẽ lại trong
ScrollIndicatorđể cải thiện hiệu suất. (Ia7a67). - Khắc phục một lỗi trong
TransformingLazyColumn, trong đó mục hiển thị trên cùng trong danh sách không được điều chỉnh tỷ lệ chính xác khi EdgeButton đạt đến chiều cao tối đa. (I30580).
Phiên bản 1.5.0-alpha14
Ngày 23 tháng 4 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha14. Phiên bản 1.5.0-alpha14 bao gồm các thay đổi sau.
Thay đổi về API
- Tất cả các phần phụ thuộc
SwipeToRevealcủa Material trênSwipeToRevealFoundation đều được chuyển sang gói Material, ví dụ:RevealValue,RevealDirection,RevealActionType,RevealState,rememberRevealState. Nhà phát triển nên thay đổi các hoạt động nhập của những lớp và hàm này từandroidx.wear.compose.foundationthànhandroidx.wear.compose.material. (Ib7cb8) - Cập nhật API của
HierarchicalFocusCoordinatorthành các đối tượng sửa đổi thay vì các thành phần kết hợp. - Ghi chú về việc di chuyển:
- Bạn có thể thay thế
HierarchicalFocusCoordinator(function, content)bằng cách thêmModifier.hierarchicalFocus(function())vàocontenthoặc thành phần kết hợp bao quanh. - Bạn có thể thay thế
ActiveFocusListener { if (it) focusRequester.requestFocus() }bằng cách thêmModifier.hierarchicalFocusRequester(focusRequester) - Các trường hợp sử dụng
ActiveFocusListenerhiếm gặp khác có thể sử dụng tham số mới trênModifier.hierarchicalFocus focusRequester(rememberActiveFocusRequester())có thể được thay thế bằnghierarchicalFocusRequester()- Bạn có thể thay thế
val focusRequester = rememberActiveFocusRequester()bằngremember { FocusRequester() }và thêmModifier.hierarchicalFocusRequester(focusRequester). (Ie319a)
- Bạn có thể thay thế
Sửa lỗi
- Ngưỡng vận tốc mà cử chỉ vuốt cần vượt quá để kích hoạt thay đổi trạng thái đã được tăng lên cho các thành phần sau:
SwipeToReveal,BasicSwipeToDismissBoxvàSwipeDismissableNavHost(chỉ dành cho API 35 trở xuống choSwipeDismissableNavHost). (If47bf) - Khắc phục vấn đề về ảnh động khi các mục mới được thêm vào
TransformingLazyColumn. (I589b2)
Phiên bản 1.5.0-alpha13
Ngày 9 tháng 4 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha13. Phiên bản 1.5.0-alpha13 bao gồm các thay đổi sau.
Thay đổi về API
- Các dự án được phát hành bằng Kotlin 2.0 yêu cầu sử dụng KGP 2.0.0 trở lên (Idb6b5)
- Thêm thuộc tính
targetPagevàoPagerState(I4de8b)
Sửa lỗi
- Ngăn quá trình kết hợp lại không cần thiết trong thao tác xem trước thao tác quay lại. (Iecd6d)
- Đã sửa thuộc tính
isScrollablecủaScrollInfoProviderđể trả về giá trị hiện tại. (Icbfb8)
Phiên bản 1.5.0-alpha12
Ngày 26 tháng 3 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha12. Phiên bản 1.5.0-alpha12 bao gồm các thay đổi sau.
Thay đổi về API
- Cải thiện chế độ triển khai mặc định
SwipeToRevealcủagestureInclusionđể chỉ bỏ qua cử chỉ nếu trạng thái của thành phần là Covered. (I7e3d6) - Đối với
SwipeToReveal, hãy đặtbidirectionalGestureInclusionthành val thay vì hàm và thêm@FloatRangevào tham sốedgeZoneFractiontronggestureInclusion. (Ica7c3)
Sửa lỗi
- Thay đổi
SwipeToRevealbidirectionalGestureInclusionđể trả về một đối tượng thay vì một lớp. (I29597) - Tắt chế độ sử dụng phản hồi xúc giác khi chạy kiểm thử trong
RoboElectric. (I58bd1) - Cập nhật khoảng đệm
SwipeToRevealgiữa nội dung và các nút thao tác, cũng như khoảng đệm giữa biểu tượng và văn bản của các nút thao tác. (Ic46cb)
Phiên bản 1.5.0-alpha11
Ngày 12 tháng 3 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha11. Phiên bản 1.5.0-alpha11 bao gồm các thay đổi sau.
Thay đổi về API
- Đã cập nhật
PagerState, xoá Compose FoundationPagerStatelàm lớp cơ sở và thêm các thuộc tínhcurrentPage,currentPageOffsetFractionvàpageCount. Cập nhật giao diệnGestureInclusion, đổi tên phương thức thànhignoreGestureStart. (I4ae07) - Thêm
requireOffsetvàoSwipeToDismissBoxStatelàm phương thức được đề xuất để nhận độ lệch củaSwipeToDismissBoxState. (I21042) - Đã thêm
CurvedModifier.semantics, ban đầu hỗ trợ nội dung mô tả và chỉ mục di chuyển (I0b093) - Chúng tôi đã thêm
CurvedModifier.clearAndSetSemanticsđể cung cấp phương tiện tắt ngữ nghĩa cong.CurvedTexttiếp tục mặc định nội dung mô tả thành văn bản, nhưngtimeTextCurvedTextvàtimeTextSeparatorhiện không thông báo nội dung của chúng. (I4b568) - Thao tác xử lý mặc định của
HorizontalPagerđối với cử chỉ vuốt đã được đổi tên thànhPagerDefaults.gestureInclusion. Giờ đây, theo mặc định, hệ thống sẽ chỉ bỏ qua cử chỉ vuốt bắt đầu ở cạnh trái của trang đầu tiên và chỉ khi TalkBack tắt. Trong các trường hợp khác, theo mặc định, hệ thống sẽ không bỏ qua cử chỉ vuốt của trình phân trang, vì vậy, các cử chỉ này sẽ không có sẵn cho trình xử lý vuốt để đóng. (Iee486) - Thêm thao tác cuộn quá mức bằng nút xoay cho API
rotaryScrollable. Đã thêm tính năng cuộn quá mức và cuộn lồng vào hành vi hấtrotaryScrollable. Thay đổi này sẽ mang đến chức năng cuộn quá mức và cuộn lồng nhau tương đương giữa thao tác cuộn bằng cách chạm và thao tác cuộn bằng bộ mã hoá xoay. (I71926) - Thêm tính năng hỗ trợ cho vùng vuốt từ cạnh vào
SwipeToReveal. Giờ đây, hành vi mặc định của FoundationSwipeToReveallà không cho phép vuốt khi cử chỉ bắt đầu từ cạnh. Giờ đây, hành vi mặc định củaSwipeToRevealMaterial3 là không cho phép vuốt khi cử chỉ bắt đầu từ cạnh, khiSwipeDirectionđược đặt thành một hướng. (I32ef0) - Giờ đây, theo mặc định, TLC sử dụng contentPadding trống thay vì đặt mục đầu tiên và mục cuối cùng vào giữa. (I77ab7)
Sửa lỗi
- Các thư viện Wear Compose đã được cập nhật lên trình biên dịch Kotlin 2.0. (I2de79)
- Đã sửa mẫu
LetterSpacingcong trên nền. (Iebf7c)
Phiên bản 1.5.0-alpha10
Ngày 26 tháng 2 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha10. Phiên bản 1.5.0-alpha10 bao gồm các thay đổi sau.
Thay đổi về API
- Đặt
SwipeToRevealDefaultsở chế độ công khai. (I0c34c) - Chúng tôi đã thay thế tham số
swipeToDismissEdgeZoneFractiontrongHorizontalPager. Thay vào đó, một tham số mới làgestureInclusionđã được giới thiệu và có thể dùng để đạt được hành vi vuốt để đóng cần thiết.gestureInclusionnhận một thực thể củaGestureInclusion. Thực thể này quyết định xem sự kiện cuộn tiếp theo có nên tiếp tục hay không. Cho phép một cử chỉ có nghĩa là Pager sẽ sử dụng cử chỉ đó – nếu không, cử chỉ đó sẽ được xử lý ở nơi khác, chẳng hạn như trình xử lý vuốt để đóng. Hành vi mặc định mới là không cho phép cử chỉ ở cạnh ngoài cùng bên trái của trang đầu tiên trong Pager, do đó cho phép vuốt để đóng trong khu vực này. Tất cả các trang khác sẽ cho phép Pager sử dụng mọi cử chỉ, tức là bạn không thể kích hoạt cử chỉ Vuốt để đóng từ các trang đó. Để đạt được hành vi Vuốt để đóng trên tất cả các trang, bạn chỉ cần cung cấp một thực thểGestureInclusiontuỳ chỉnh (xemPagerDefaults.disableLeftEdgeOnFirstPage) bỏ qua trang hiện tại. Một thay đổi lớn khác được giới thiệu ở đây là thành phần Pager không còn ở chế độ toàn màn hình theo mặc định, thay vào đó, hãy thêmModifier.fillMaxSize()để đạt được hành vi này. (I9d3aa) - Chúng tôi đã đổi tên
createAnchorsthànhcreateRevealAnchorstrong API vuốt để hiển thị(If5999) - Chúng tôi đã xoá
RevealScopekhỏi API vuốt để hiển thị. (Ie4ad5) - Chúng tôi đã xoá trạng thái Revealing (Đang hiển thị) và Revealed (Đã hiển thị) khỏi
RevealValuetrong API vuốt để hiển thị. (I8dbc5) - Chúng tôi đã đổi tên
SwipeDirectionthànhRevealDirectiontrong API vuốt để hiển thị. (I7472f) - Chúng tôi đã thay đổi chữ ký của tham số
positionalThresholdtrong hàmrememberRevealStatecủaSwipeToReveal. (I29c0a) - Chúng tôi đã thêm một tham số
overscrollEffectmới vàoScalingLazyColumn,TransformingLazyColumnvàScreenScaffold. (I0cee8) - Khi sử dụng
PagerDefaults#snapFlingBehaviour, tham sốpagerSnapDistanceđã được thay thế bằng tham số IntmaxFlingPages. Bạn có thể dùng tham số này để chỉ định số lượng trang tối đa mà Pager sẽ hất. (I8cfc0) - Wear Pager hiện có
PagerScoperiêng thay vì sử dụngPagerScopecủa Compose Foundation. (I9195b) - Chúng tôi đã thêm tính năng hỗ trợ
lineHeightcho Văn bản cong (I1c936) - Chúng tôi đã thêm
initialAnchorItemIndexvàinitialAnchorItemOffsetvàoTransformingLazyColumnStatevàrememberTransformingLazyColumnStateđể có thể chỉ định vị trí cuộn ban đầu trongTransformationLazyColumn. (I0a0d5) - Không dùng
runWithTimingDisablednữa mà thay bằngrunWithMeasurementDisabled.runWithMeasurementDisabledmô tả rõ ràng hơn về hành vi này – tất cả các chỉ số đều bị tạm dừng. Ngoài ra, hãy hiển thị siêu lớpMicrobenchmarkScopevì không thể khai báo lại hàmrunWithMeasurementDisabledđể mở quyền truy cập, vì hàm này là hàm nội tuyến. (I9e23b, b/389149423, b/149979716) - Chúng tôi đã thêm
TransformingLazyColumnItemScrollProgress.Unspecifiedvào API để tránh việc đóng gói trênTransformingLazyColumnItemScrollProgress. (I0835d)
Sửa lỗi
- Cải thiện Kdoc cho
CurvedTextStyle(Id45e3) - Chúng tôi đã đặt
SwipeableV2(một phần của quá trình triển khaiSwipeToReveal) ở chế độ nội bộ thay vì công khai nhưng chỉ giới hạn ở nhóm thư viện. (Idbb94) - Chúng tôi đã thêm các thử nghiệm vào
HierarchicalFocusCoordinator(I1ce54, b/395548918) - Chúng tôi đã cải thiện
SwipeToRevealtrong các mẫu nền tảng Wear Compose. (I5f307) - Khắc phục dữ liệu ngữ nghĩa của trục cuộn cho
verticalScrollAxisRangetrongTransformingLazyColumnđể hỗ trợ tiếp cận (I68123) - Cải thiện hiệu suất của chế độ rung xoay trên Wear4 trở lên bằng cách xoá các luồng không cần thiết ở chế độ nền (I39cfe)
- Thay đổi
SwipeDismissableNavHostđể chỉ sử dụngPredictiveBackNavHosttrên API 36 trở lên. (I59bed) - Chúng tôi đã thêm một biện pháp bảo vệ để ngăn xảy ra sự cố khi truy cập vào chế độ cài đặt reducemotion. (I01e2c)
- Chúng tôi đã triển khai tính năng tìm nạp trước cho
TransformingLazyColumnđể giảm hiện tượng giật (Icca88)
Phiên bản 1.5.0-alpha09
Ngày 29 tháng 1 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha09. Phiên bản 1.5.0-alpha09 bao gồm các thay đổi sau.
Thay đổi về API
- Trên
CurvedTextStyle, chúng tôi đã chia khoảng cách giữa các chữ cái thành khoảng cách giữa các chữ cái theo chiều kim đồng hồ và khoảng cách giữa các chữ cái ngược chiều kim đồng hồ. Đây là yêu cầu bắt buộc vì các chữ cái theo chiều kim đồng hồ sẽ xoè ra từ đường cơ sở, trong khi các chữ cái ngược chiều kim đồng hồ sẽ xoè vào (do đó, cần có khoảng cách giữa các chữ cái lớn hơn) (I4b848) CompositionLocalLocalReduceMotionđã được đơn giản hoá để trả về một giá trị Boolean thay vì một đối tượngReduceMotion. Giao diệnReduceMotionhiện không được dùng nữa. Bạn có thể thay thế các lệnh gọi trước đó, chẳng hạn nhưLocalReduceMotion.current.enabled()bằngLocalReduceMotion.current(I4937f)- Trong
PagerDefaults,snapAnimationSpecđã được đổi tên thànhSnapAnimationSpec. (I20c9a)
Phiên bản 1.5.0-alpha08
Ngày 15 tháng 1 năm 2025
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha08. Phiên bản 1.5.0-alpha08 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã cập nhật tất cả các thư viện Wear Compose sang chế độ "API rõ ràng". (Iebf9f)
- Chúng tôi đã đưa tham số ảnh động chụp nhanh của trình phân trang vào
PagerDefaults. (Ifff64) - Chúng tôi đã thêm một tham số độ dời vào
SwipeToDismissBoxState. (I586bd)
Sửa lỗi
- Giờ đây, các phiên bản Wear OS sau V (Idb03e) sẽ gọi phản hồi xúc giác của nền tảng xoay
Phiên bản 1.5.0-alpha07
Ngày 11 tháng 12 năm 2024
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha07. Phiên bản 1.5.0-alpha07 bao gồm các thay đổi sau.
Thay đổi về API
TransformingLazyColumnStatehiện cung cấp một cách để theo dõi tiến trình cuộn hiện tại dựa trên chỉ mục của mục neo. (I72b01)- Chúng tôi đã thêm ảnh động vào
TransformingLazyColumnkhi thêm, xoá và di chuyển các mục, nếu các mục đó cóModifier.animateItemmới. (Iecb9c) TransformingLazyColumnhiện cho thấy các giá trị dành chobeforeContentPaddingvàafterContentPadding. (Iccd5f)TransformingLazyColumnhiện cung cấp thành phần cục bộLocalTransformingLazyColumnItemScopemà các thành phần (chẳng hạn nhưCardvàButtontrong Material 3) có thể dùng để tự động biến đổi khi được đặt bên trong mộtTransformingLazyColumn. Người gọi có thể tắt tính năng biến đổi tự động bằng trình bao bọcTransformExclusionmới. (I1652f)
Sửa lỗi
- Chúng tôi đã cập nhật vận tốc hất tối thiểu và tối đa cho thao tác xoay trên các thiết bị nhắm đến U trở lên. (I33559)
- Chúng tôi đã khắc phục sự cố xảy ra nếu một mục trong
TransformingLazyColumnkhông chứa thành phần kết hợp nào (Idb99d) - Chúng tôi đã thêm tính năng hỗ trợ
ScrollFeedbackProvidercho chế độ rung xoay trên Android Vanilla Ice Cream. (Ibc553) - Chúng tôi đã tăng độ trễ khi chạm khi sử dụng
SwipeToRevealđể giảm khả năng vô tình kích hoạt cử chỉ vuốt khi cuộn theo chiều dọc. (Ic0672) - Chúng tôi đã cập nhật
SwipeDismissableNavHostđể dùngPredictiveBackHandlerkhi có API 35 trở lên. Trong trường hợp đó, ảnh động mới sẽ được áp dụng. (I08c11)
Phiên bản 1.5.0-alpha06
Ngày 13 tháng 11 năm 2024
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha06. Phiên bản 1.5.0-alpha06 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã đơn giản hoá
ScrollInfoProviderchoPagerStatebằng cách xoá tham sốorientationvì tham số này không còn cần thiết nữa. Hành vi mới làTimeTextvẫn giữ nguyên vị trí cho cả thao tác phân trang theo chiều ngang và chiều dọc. (I71767) TransformingLazyColumnđược giới thiệu trong các bản phát hành trước. Giờ đây, chúng tôi sẽ xoá các bí danhLazyColumncủa Wear (được chuyển tiếp đếnTransformingLazyColumn) để thay bằng tên mớiTransformingLazyColumn. Chúng tôi cũng đã xoá thuộc tínhheightcủaTransformingLazyColumnVisibleItemInfo. Vui lòng sử dụngmeasuredHeight. (I0ea1e)- Chúng tôi đã thay đổi
PagerDefaults.snapFlingBehaviorsnapAnimationSpectừTweenthành thông số kỹ thuậtSpring.(I10d02, b/349781047, b/303807950) - Chúng tôi đã nâng cấp
LocalReduceMotionCompositionLocallên bản ổn định (Ia6f32)
Sửa lỗi
- Chúng tôi đã cập nhật
Modifier.rotaryScrollableđể sử dụngfocusTargetWithSemanticsnhằm hỗ trợ ngữ nghĩa tốt hơn trong chế độ xoay. (Ief0a0) - Chúng tôi đã cập nhật phần phụ thuộc API tối thiểu lên 1.7.4 cho các thư viện Compose. (I88b46)
- Chúng tôi đã vô hiệu hoá tính năng biến đổi chiều rộng trong
TransformingLazyColumnđể khắc phục lỗi cắt. (I3dfb8) - Chúng tôi đã khắc phục một lỗi khiến các mục biến mất sau khi cuộn quá mức bằng
TransformingLazyColumn(Id7668) - Chúng tôi đã thêm
LazyLayoutSemanticschoTransformingLazyColumn. (Ia8f56)
Phiên bản 1.5.0-alpha05
Ngày 30 tháng 10 năm 2024
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha05. Phiên bản 1.5.0-alpha05 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thêm tính năng hỗ trợ cho
animateScrollTotrênTransformingLazyColumnStateđể bạn có thể tạo hiệu ứng cho thao tác cuộn đến một mục. (I4097d) - Chúng tôi đã thêm
requestScrollTovàoTransformingLazyColumnStateđể hoãn việc cuộn đến phép đo tiếp theo. (I20a5e) - Chúng tôi đã thêm tính năng hỗ trợ cho
contentPaddingtrongTransformingLazyColumn. (I3a69c)
Sửa lỗi
- Chúng tôi đã sửa một lỗi khi kết xuất
TransformingLazyColumnkhi chiều cao nội dung ngắn hơn chiều cao màn hình. (I6c3e1) ScrollInfoProvderchoTransformingLazyColumnhiện theo dõi đúng mục đầu tiên. (I1e4a3)- Giờ đây,
TransformingLazyColumnStatesẽ lưu trạng thái của nó (anchorItemIndexvàanchorItemScrollOffset). (I3d265)
Phiên bản 1.5.0-alpha04
Ngày 16 tháng 10 năm 2024
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha04. Phiên bản 1.5.0-alpha04 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã đổi tên Wear Compose Foundation
LazyColumnthànhTransformingLazyColumnđể phân biệt rõ hơn giữa thành phần này và Compose FoundationLazyColumn. (I0608b) - Thêm chế độ hỗ trợ thao tác xoay cho các trình phân trang Ngang/Dọc, cho phép người dùng điều hướng trình phân trang bằng thiết bị nhập dữ liệu xoay. (I9770d)
- Chúng tôi đã cập nhật
PagerDefaultsmới để làm rõ rằng trình phân trang sẽ chuyển nhanh đến trang theo mặc định. (Iff7d0) TransformingLazyColumnItemScrollProgresshiện là một lớp giá trị giúp cải thiện hiệu suất. (Ic399e)TransformingLazyColumnhiện hỗ trợ thao tác xoay ngay từ đầu. (I05206)TransformingLazyColumnStatehiện hỗ trợscrollToItem. (I507b3)- Xoá
@ExperimentalWearFoundationApikhỏi APISwipeToReveal(I34a66)
Phiên bản 1.5.0-alpha03
Ngày 2 tháng 10 năm 2024
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha03. Phiên bản 1.5.0-alpha03 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thêm tính năng hỗ trợ thao tác vuốt hai chiều trong
SwipeToReveal, trong trường hợp hiếm gặp khi màn hình hiện tại không hỗ trợ thao tác vuốt để đóng. . Theo mặc định, thao tác vuốt để hiển thị chỉ áp dụng cho thao tác vuốt từ phải sang trái. Bạn nên tuân thủ hành vi mặc định để tránh xung đột với thao tác vuốt để đóng. (Ifac04) - Chúng tôi đã cập nhật
LazyColumnStateđể ghi đècanScrollForwardvàcanScrollBackward. Giờ đây, thao tác này sẽ dừng cuộn khi mục đầu tiên hoặc mục cuối cùng nằm chính xác ở giữa màn hình. (Ia77d7) - Chúng tôi đã thêm các thành phần
HorizontalPagervàVerticalPagermới để giải quyết các vấn đề thường gặp, chẳng hạn như xử lý tiêu điểm và tương tác với cử chỉ vuốt để đóng hệ thống có thể xảy ra trên Wear. (I2902b) - Chúng tôi đã thêm tính năng hỗ trợ cho
LazyColumnđể hiển thịkeyvàcontentTypecủa ứng dụng thông qualayoutItems. (I1bd9c)
Sửa lỗi
- Chúng tôi đã cập nhật ảnh động văn bản cong để mượt mà hơn bằng cách sử dụng cờ vẽ. (I73a15)
- Chúng tôi đã cập nhật tài liệu về Hộp thoại Material để phản ánh rằng
onDismissRequestkhông được gọi sau khi cờ hiển thị được đặt thành false. (Ifd8d6) - Chúng tôi đã khắc phục một lỗi liên quan đến ảnh động mờ viền trong Hộp thoại Material (I126bf)
Phiên bản 1.5.0-alpha02
Ngày 18 tháng 9 năm 2024
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha02. Phiên bản 1.5.0-alpha02 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thêm chế độ hỗ trợ cho
LazyColumnWear Compose bằngScreenScaffold(và thêm một quy trình triển khaiScrollInfoProviderchoLazyColumnState). (Ib8d29) - Chúng tôi đã thêm
viewportSizevàoLazyColumnLayoutInfo. (I4187f)
Sửa lỗi
- Chúng tôi đã khắc phục một lỗi để giờ đây, chế độ cuộn xoay sẽ bị vô hiệu hoá trong
ScalingLazyColumnkhi cờuserScrollEnabledđược đặt thànhfalse. (I490ab, b/360295825) - Chúng tôi đã sửa một lỗi để giải quyết vấn đề khoảng đệm dọc không mong muốn trên văn bản cong. Chiều cao của văn bản cong hiện khớp với không gian thực tế mà văn bản sử dụng. Xin lưu ý rằng điều này có thể làm hỏng các thử nghiệm ảnh chụp màn hình liên quan đến văn bản cong (Iaa6ef)
- Chúng tôi đã hoàn nguyên một bản sửa lỗi về
Dialog, trong đó lệnh gọi lạionDismissRequestđược gọi khishowDialogđược đặt thành false, vì trong một số trường hợp, điều này dẫn đến việconDismissRequestđược gọi nhiều lần. (I64656)
Phiên bản 1.5.0-alpha01
Ngày 4 tháng 9 năm 2024
Phát hành androidx.wear.compose:compose-*:1.5.0-alpha01. Phiên bản 1.5.0-alpha01 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thêm một
LazyColumnmới vào thư viện Wear Compose Foundation cùng với các APILazyColumnStatevàLazyColumnScopeđược liên kết. Đây là nền tảng để tạo các hiệu ứng thu phóng và biến đổi có thể tuỳ chỉnh bằng Wear Compose. (Ib3b22) - Chúng tôi đã thêm một phiên bản được lập chỉ mục của
itemsIndexedvàoLazyColumnScopetrong APILazyColumnmới. (Ib4a57) - Chúng tôi đã thêm các đối tượng sửa đổi
LazyColumnđể hỗ trợ các hành vi thu nhỏ và biến đổi. (Ie229a) HierarchicalFocusCoordinatorđã được nâng cấp lên thành ổn định. (I31035)- Chúng tôi đã thêm tính năng hỗ trợ khoảng cách giữa các chữ cái cho văn bản cong. (I3c740)
- Thêm tham số
rotationLockedvàoCurvedLayout.curvedComposableđể ngăn các thành phần bị xoay. (I66898) - API
LocalUseFallbackRippleImplementationtạm thời từ wear material và wear material3 đã bị xoá (I62282) - Xoá
WearDevices.SQUAREkhỏi chế độ xem trước nhiều khung hình@WearPreviewDevices(I11c02)
Sửa lỗi
- Giờ đây,
SwipeToRevealsẽ đặt các mục được hiển thị trên phần hiển thị của màn hình. Điều này sẽ hữu ích khiSwipeToRevealđược dùng trong một danh sách, vì vậy, người dùng luôn có thể tương tác với các mục và các mục này không bao giờ nằm ngoài màn hình. (I38929) SwipeToRevealhiện đặt lạilastActionTypethành None khianimatedTođã hoàn tất. (I59b03)- Cải thiện tài liệu cho tham số
rotationLockedmới trêncurvedComposable. (Ifbd57) - Khắc phục sự cố khi truyền
NaNvàoperformFlingcủaScalingLazyColumnSnapFlingBehavior. (Ic13da) - Khắc phục lỗi trên đối tượng sửa đổi kích thước bố cục cong (I0fedf)
- Chúng tôi đã thêm tính năng hỗ trợ khoảng cách giữa các chữ cái được chỉ định trong "sp". (I9f6e3)
- Chúng tôi đã khắc phục một lỗi trong Hộp thoại Material2, trong đó lệnh gọi lại
onDismissRequestkhông được gọi khi hộp thoại trở nên không nhìn thấy được (I64656) - Đổi tên
LayoutCoordinates.introducesFrameOfReferencethànhLayoutCoordinates.introducesMotionFrameOfReferenceđể phản ánh rõ hơn mục đích của tham số này. Đổi tên hàm liên quan để tính toán toạ độ dựa trên cờ đó. (I3a330)
Phiên bản 1.4
Phiên bản 1.4.1
Ngày 12 tháng 2 năm 2025
Phát hành androidx.wear.compose:compose-*:1.4.1. Phiên bản 1.4.1 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã ngăn chặn 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)
Phiên bản 1.4.0
Ngày 4 tháng 9 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0. Phiên bản 1.4.0 bao gồm các thay đổi sau.
Thay đổi quan trọng kể từ phiên bản 1.3.0
ScalingLazyColumnvàPickerhiện hỗ trợ chế độ xoay theo mặc định – bạn nên xoá chế độ xử lý xoay rõ ràng và chuyển sang hành vi mặc định của hệ thống. Nếu cần, hãy dùng tham sốrotaryScrollableBehaviorđể định cấu hình hành vi cuộn hoặc hành vi chụp nhanh. Đối với hành vi chụp nhanh, bạn nên cung cấp hành vi chụp nhanh và khả năng cuộn bằng thao tác chạm bằng tham sốflingBehavior.Modifier.rotaryScrollablelà một đối tượng sửa đổi mới, kết nối các sự kiện xoay với vùng chứa có thể cuộn, cho phép người dùng cuộn bằng núm vặn hoặc viền xoay trên thiết bị Wear OS.SwipeDismissableNavHosthiện cung cấp ảnh động vào cảnh cho các hiệu ứng chuyển đổi trong ứng dụng.PositionIndicatorhiện được hiển thị theo mặc định khi màn hình xuất hiện lần đầu.
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.3.0, hãy xem ghi chú phát hành beta01.
Phiên bản 1.4.0-rc01
Ngày 21 tháng 8 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0-rc01. Phiên bản 1.4.0-rc01 bao gồm các thay đổi sau.
- Chúng tôi đã cập nhật các phần phụ thuộc Compose lên 1.7.0-rc01 và ghim Wear Compose Navigation vào androidx.lifecycle 2.8.3
Phiên bản 1.4.0-beta03
Ngày 12 tháng 6 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0-beta03. Phiên bản 1.4.0-beta03 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã cập nhật
Modifier.rotaryScrollableđể thay thế việc sử dụng "focusable" bằng "focusTarget" nhằm cải thiện hiệu suất. (Id294b) - Chúng tôi đã khắc phục vấn đề khiến
ProgressIndicatorlặp lại thông báo trongTalkBack. (I94563) - Chúng tôi đã cập nhật hồ sơ cơ sở của thư viện Wear Compose. (I3cbc3)
Phiên bản 1.4.0-beta02
Ngày 29 tháng 5 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0-beta02. Phiên bản 1.4.0-beta02 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã tăng chiều rộng ranh giới được truyền đến trình đọc màn hình từ văn bản cong để giải quyết các vấn đề về việc cắt bớt (Id865f).
- Chúng tôi đã giới hạn ranh giới của
HorizontalPageIndicatorđược truyền đến trình đọc màn hình – trước đây, chỉ báo này chiếm toàn bộ màn hình (Id8d7a).
Phiên bản 1.4.0-beta01
Ngày 14 tháng 5 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0-beta01. Phiên bản 1.4.0-beta01 bao gồm các thay đổi sau.
Bản phát hành 1.4-beta01 của Compose cho Wear OS 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 Compose 1.4 có chức năng mới sau đây:
- Chúng tôi đã thêm
Modifier.rotaryScrollable, một đối tượng sửa đổi mới kết nối các sự kiện xoay với các vùng chứa có thể cuộn, cho phép người dùng cuộn thông qua núm vặn hoặc viền xoay trên thiết bị Wear OS. Ngoài ra,ScalingLazyColumnvàPickerhiện hỗ trợ chế độ xoay theo mặc định. Sử dụng tham sốrotaryScrollableBehaviorđể định cấu hình hành vi cuộn hoặc hành vi chụp nhanh. Đối với hành vi chụp nhanh, bạn nên cung cấp tính năng chụp nhanh thông qua tham sốflingBehaviorcũng như tính năng cuộn bằng thao tác chạm. SwipeDismissableNavHosthiện cung cấp ảnh động xuất hiện cho các hiệu ứng chuyển đổi trong ứng dụng.PositionIndicatorhiện được hiển thị theo mặc định khi màn hình xuất hiện lần đầu.SelectableChipvàSplitSelectableChipđã được thêm dưới dạng một biến thể củaToggleChip– hãy dùng biến thể này vớiRadioButtonđể cung cấp ngữ nghĩa có thể chọn thay vì ngữ nghĩa có thể bật/tắt cho khả năng hỗ trợ tiếp cậnListHeaderhiện hỗ trợ điều chỉnh chiều cao khi nội dung cần thêm chiều cao để phù hợp với cỡ chữ lớn.
Sửa lỗi
- Chúng tôi đã khắc phục một lỗi khiến các khối có thể chọn thông báo nhấn đúp để bật/tắt khi đã chọn. (I7ed88)
Phiên bản 1.4.0-alpha08
Ngày 1 tháng 5 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0-alpha08. Phiên bản 1.4.0-alpha08 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thực hiện các thay đổi sau đây đối với API thao tác xoay mới: đổi tên
Modifier.rotarythànhModifier.rotaryScrollable; đổi tên giao diệnRotaryBehaviorthànhRotaryScrollableBehaviorvà hàmhandleScrollEventthànhperformScroll; đổi tênRotaryScrollableAdapterthànhRotaryScrollableLayoutInfoProvidervà xoá thuộc tínhscrollableState. (I0c8a6) - Chúng tôi đã thực hiện các thay đổi khác đối với API thao tác xoay: đổi tên
RotaryScrollableLayoutInfoProviderthànhRotarySnapLayoutInfoProvider(vì chỉ cần nhà cung cấp này cho thao tác xoay có tính năng chụp nhanh); thay đổi loại tham sốsnapOffsettrongRotaryScrollableDefaults.snapBehavior snapOffsettừ Int thành Dp. (Iddebe) - Chúng tôi đã đổi tên tham số
clickInteractionSourcetrênSplitSelectableChipthànhcontainerInteractionSource. (Ia8f84) - Chúng tôi đã cập nhật tên tham số gọi lại khi nhấp cho
SplitSelectableChip– từonClickthànhonSelectionClickvà từonBodyClickthànhonContainerClick. (I32237)
Sửa lỗi
- Chúng tôi đã cập nhật khoảng đệm ngang cho
PositionIndicatorthành 2 dp (trước đây là 5 dp) để khắc phục lỗiPositionIndicator(thanh cuộn) trùng lặp với nội dung có thể cuộn. Xin lưu ý rằng thay đổi này dự kiến sẽ làm hỏng các ảnh chụp màn hình hiện có có chứaPositionIndicatordo thay đổi về khoảng đệm. (I57472) - Chúng tôi đã cải thiện tài liệu cho API xoay mới bằng cách mô tả sự khác biệt giữa các thiết bị xoay có độ phân giải thấp và độ phân giải cao. (I63abe)
- Chúng tôi đã giải quyết một trường hợp ngoại lệ ngoài phạm vi trong
SwipeDismissableNavHostcó thể được kích hoạt khi các giá trị alpha được nội suy nhỏ hơn 0. (Ib75a1, b/335782510)
Phiên bản 1.4.0-alpha07
Ngày 17 tháng 4 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0-alpha07. Phiên bản 1.4.0-alpha07 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thêm
Modifier.rotary, một đối tượng sửa đổi mới kết nối các sự kiện xoay với các vùng chứa có thể cuộn, cho phép người dùng cuộn thông qua núm vặn hoặc viền xoay trên thiết bị Wear OS. Ngoài ra,ScalingLazyColumnvà Bộ chọn hiện hỗ trợ chế độ xoay theo mặc định, với các hàm nạp chồng mới bao gồm tham sốrotaryBehaviorđể chỉ định cấu hình của chế độ cuộn hoặc chế độ điều chỉnh. Nếu bạn đặt tham sốrotaryBehaviorthành snap, thì bạn cũng nên cung cấp snap thông qua tham sốflingBehaviorđể cuộn bằng thao tác chạm. (I2ef6f) - Các nguồn
NestedScrollKéo và Thả đang được thay thế bằngUserInputvàSideEffectđể phù hợp với định nghĩa mở rộng của các nguồn này, hiện bao gồm cả ảnh động (Tác dụng phụ) cũng như Bàn phím và Chuột (UserInput). (I40579) - Chúng tôi đã thêm
SelectableChipvàSplitSelectableChipđể phân biệt rõ hơn giữa các nút điều khiển bật/tắt nhưSwitch/Checkboxvà các nút điều khiển có thể chọn nhưRadioButton. Thao tác này sẽ thay thế các phương thức nạp chồng đã thêm trước đó củaToggleChip/SplitToggleChipbằng các tham sốselectionControl. (Ia0217) - Đã cập nhật đối tượng sửa đổi chế độ hiển thị của
IndeterminateStrokeWidthtrongProgressIndicatorDefaultsthành công khai. (I5b5a4)
Phiên bản 1.4.0-alpha06
Ngày 3 tháng 4 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0-alpha06. Phiên bản 1.4.0-alpha06 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã thêm bản nháp nội bộ về chế độ hỗ trợ thao tác xoay, trong khuôn khổ nỗ lực lớn hơn nhằm di chuyển hành vi Xoay vào AndroidX từ Horologist. (I617d1)
- Chúng tôi đã thêm bản nháp nội bộ về tính năng hỗ trợ phản hồi xúc giác, trong nỗ lực lớn hơn nhằm di chuyển hành vi Xoay vào AndroidX từ Horologist. (I5568a)
Phiên bản 1.4.0-alpha05
Ngày 20 tháng 3 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0-alpha05. Phiên bản 1.4.0-alpha05 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã công khai các thuộc tính
initialCenterItemIndexvàinitialCenterItemScrollOffsetcủaScalingLazyListState. (I0c616) - Chúng tôi đã công khai
FullScreenStrokeWidthtừProgressIndicatorDefaults. (Ibea23)
Sửa lỗi
- Chúng tôi đã cải thiện hiệu suất của
PositionIndicatorbằng cách giảm số lượng lệnh gọi đếnlayoutInfotừScalingLazyColumn. (Idc83d)
Phiên bản 1.4.0-alpha04
Ngày 6 tháng 3 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0-alpha04. Phiên bản 1.4.0-alpha04 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thêm một phương thức nạp chồng mới cho
ToggleChipvàSplitToggleChip. Phương thức này sẽ lấy tham sốselectionControlthay vì tham sốtoggleControl. Bạn nên dùng chế độ này với chế độ điều khiểnRadioButtonđể cung cấp ngữ nghĩa có thể chọn thay vì ngữ nghĩa có thể bật/tắt cho khả năng hỗ trợ tiếp cận (I1d6d9) - Chúng tôi đã cập nhật tên tham số cho hàm
selectionControlmới từonSelectedthànhonSelectchoToggleChipvàSplitToggleChip(I1a971)
Phiên bản 1.4.0-alpha03
Ngày 21 tháng 2 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0-alpha03. Phiên bản 1.4.0-alpha03 bao gồm các thay đổi sau.
Thay đổi về API
- Trình bao bọc
Modifier.inspectablekhông còn được dùng nữa. API này sẽ tạo ra nhiều lượt vô hiệu hoá đối tượng sửa đổi hơn mức cần thiết, vì vậy, bạn không nên sử dụng API này nữa. Nhà phát triển nên triển khai phương thứcinspectableProperties()trênModifierNodeElementnếu muốn hiển thị các thuộc tính của đối tượng sửa đổi cho công cụ. (Ib3236)
Sửa lỗi
- Chúng tôi đã sửa một lỗi trong tài liệu về chú thích
WearPreview*. (Id526d)
Phiên bản 1.4.0-alpha02
Ngày 7 tháng 2 năm 2024
Phát hành androidx.wear.compose:compose-*:1.4.0-alpha02. Phiên bản 1.4.0-alpha02 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã khắc phục một lỗi trong thao tác vuốt để hiển thị, trong đó người dùng có thể tương tác (và huỷ) một hành động đã thực hiện trên một mục bằng cách bắt đầu vuốt một mục khác.(Ide059)
- Chúng tôi đã cập nhật
ListHeaderđể hỗ trợ điều chỉnh chiều cao khi nội dung cần có thêm chiều cao để phù hợp với cỡ chữ lớn. (I7290c, b/251166127)
Phiên bản 1.4.0-alpha01
Ngày 24 tháng 1 năm 2024
Phát hành androidx.wear.compose:compose-*: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
- Chúng tôi đã thêm hiệu ứng chuyển động khi vào cho
SwipeDismissableNavHostđể chuyển đổi trong ứng dụng.(cfeb79a) PositionIndicatorhiện được hiển thị theo mặc định khi màn hình xuất hiện lần đầu. Thay đổi này được đưa ra để giúp đáp ứng các Nguyên tắc về chất lượng của Wear. Rất tiếc, điều này có nghĩa là bạn sẽ cần cập nhật các thử nghiệm ảnh chụp màn hình trên những màn hình có chứaPositionIndicator, vì trước đâyPositionIndicatorsẽ không xuất hiện. (419cef7)
Thay đổi về API
- Chúng tôi đã thêm một API hiệu ứng gợn sóng mới vào các thư viện
wear:compose-materialvàwear:compose-material3để thay thếrememberRipplekhông còn dùng nữa. Đồng thời, thêmCompositionLocal,LocalUseFallbackRippleImplementationtạm thời để các thành phần Material quay lại sử dụng các APIrememberRipple/RippleThemekhông dùng nữa. Tham số này sẽ bị xoá trong bản phát hành ổn định tiếp theo và chỉ nhằm mục đích hỗ trợ di chuyển tạm thời trong trường hợp bạn đang cung cấp mộtRippleThemetuỳ chỉnh. Hãy truy cập developer.android.com để biết thông tin về quá trình di chuyển và thông tin cơ bản khác về thay đổi này. (af92b21) - Chúng tôi đã cập nhật
ColorSchemeđể trở thành bất biến, khiến việc cập nhật từng màu trở nên kém hiệu quả hơn, nhưng lại giúp việc sử dụng màu phổ biến trở nên hiệu quả hơn. Lý do cho thay đổi này là vì phần lớn các ứng dụng sẽ không có trường hợp sử dụng chính là cập nhật từng màu. Điều này vẫn có thể xảy ra nhưng sẽ tái cấu trúc nhiều hơn trước. Do đó, chúng ta sẽ giảm đáng kể số lượng lượt đăng ký trạng thái thông qua tất cả mã nguồn của Material và sẽ ảnh hưởng đến chi phí khởi tạo và thời gian chạy của các trường hợp sử dụng tiêu chuẩn hơn. (f5c48b7) - Các thành phần Wear Material và Wear Material 3 có
MutableInteractionSourcetrong API của chúng đã được cập nhật để hiện cóMutableInteractionSourcecó thể rỗng và mặc định là rỗng. Không có thay đổi nào về ngữ nghĩa ở đây: truyền giá trị rỗng có nghĩa là bạn không muốn nângMutableInteractionSourcevà giá trị này sẽ được tạo bên trong thành phần nếu cần. Việc thay đổi thành giá trị rỗng cho phép một số thành phần không bao giờ phân bổMutableInteractionSourcevà cho phép các thành phần khác chỉ tạo một thực thể một cách gián tiếp khi cần, điều này giúp cải thiện hiệu suất trên các thành phần này. Nếu không dùngMutableInteractionSourcemà bạn truyền đến các thành phần này, thì bạn nên truyền giá trị rỗng. Bạn cũng nên thực hiện các thay đổi tương tự trong các thành phần của riêng mình. (f8fa920) - Chúng tôi đã cập nhật
rememberExpandableStateđể lưu trạng thái có thể mở rộng. Điều này đảm bảo rằng dữ liệu được lưu trữ khi chuyển đến một màn hình khác và được khôi phục khi quay lại màn hình ban đầu. (5c80095)
Sửa lỗi
- Chúng tôi đã cập nhật chế độ cài đặt
ReduceMotionđể sử dụng trình nghe nhận biết vòng đời. (7c6b122) - Chúng tôi đã cập nhật Trình nghe của
TouchExplorationStateProviderđể nhận biết vòng đời (be28b01) - Chúng tôi đã xoá lớp materialcore cho
CompactButtonđể cải thiện hiệu suất (25db8e9) - Chúng tôi đã làm cho
BasicSwipeToDismissBoxmạnh mẽ hơn đối với các độ lệch NaN để tránh các trường hợp ngoại lệ (b983739) - Chúng tôi đã cập nhật
BasicSwipeToDismissBoxđể đảm bảo các giá trị alpha nằm trong phạm vi 0,1 - Chúng tôi đã khắc phục một lỗi trong
ToggleButton,SplitToggleButton,Checkbox,SwitchvàRadioButtonđể thông báo về khả năng hỗ trợ tiếp cận không bị lặp lại (trước đây, các vai trò ngữ nghĩa bị trùng lặp) (d11eeb7)
Phiên bản 1.3
Phiên bản 1.3.1
Ngày 3 tháng 4 năm 2024
Phát hành androidx.wear.compose:compose-*:1.3.1. Phiên bản 1.3.1 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã khắc phục một lỗi trong thao tác vuốt để hiển thị, trong đó người dùng có thể tương tác (và huỷ) một thao tác đã thực hiện trên một mục bằng cách bắt đầu vuốt một mục khác. (Ide059)
Phiên bản 1.3.0
Ngày 24 tháng 1 năm 2024
Phát hành androidx.wear.compose:compose-*: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
- Lớp
SwipeToDismissBoxState, phép liệt kêSwipeToDismissValuevà hàm mở rộngModifier.edgeSwipeToDismisshiện là một phần của góiandroidx.wear.compose.foundation, thay vì góiandroidx.wear.compose.material. Cấu trúc mới này cho phép bạn triển khai tính năng xử lý cử chỉ một cách độc lập với các yếu tố thiết kế khác. Các quy trình làm việc của Material Design (chẳng hạn như áp dụng màu từ một giao diện đã định cấu hình) được xử lý riêng. - Các lớp
SwipeToRevealCardvàSwipeToRevealChipgiúp bạn triển khairecommended swipe-to-reveal guidance. LớpSwipeToRevealSampleminh hoạ cách sử dụng các thành phần này. Bản phát hành 1.3.0-alpha02 của chúng tôi đã giới thiệu một thay đổi khiến các đối tượng
ChipvàToggleChiptăng chiều cao để hỗ trợ tốt hơn tính năng chuyển tỷ lệ phông chữ do người dùng chọn. Điều này có thể gây ra hiện tượng cắt bớt. Để khắc phục vấn đề này, hình dạnglargechoMaterialThemehiện sử dụng bán kính góc lớn hơn (26 dp thay vì 24 dp). Các đối tượngChipvàToggleChipsử dụng bán kính góc mới này để tránh cắt nội dung ở các góc của Chip vàToggleChip.- Hầu hết
ChipsvàToggleChipsđều không thay đổi, vì chiều cao mặc định của chúng là 52 dp. Tuy nhiên, các đối tượngChipvàToggleChipchứa nhiều dòng văn bản nhãn chính hoặc nhãn phụ, hoặc đối tượng có chiều cao bị ghi đè có thể khiến các thử nghiệm chụp ảnh màn hình bị gián đoạn.
- Hầu hết
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.3.0, hãy xem ghi chú phát hành beta01.
Đề xuất về cách triển khai
- Nếu ứng dụng của bạn cho phép người dùng di chuyển nội dung trên màn hình, chẳng hạn như trong một ứng dụng dựa trên bản đồ, hãy tắt tính năng xử lý thao tác vuốt bằng cách đặt
userSwipeEnabledthànhfalsetrong thành phần kết hợpSwipeDismissableNavHostvà thêm một nút cho phép người dùng chuyển đến màn hình trước. - Để tắt ảnh động cho chỉ báo vị trí trong quá trình chuyển cảnh mờ dần và ảnh động thay đổi vị trí trong danh sách có thể cuộn, hãy sử dụng đối tượng
SnapSpec. - Trong khi chờ một ứng dụng đa phương tiện tải nội dung để phát, hãy hiện một thành phần kết hợp
Placeholdertrống. - Để tạo một tập hợp các mục có thể mở rộng theo yêu cầu, hãy cân nhắc sử dụng lớp
ExpandableStateMappingthử nghiệm.
Phiên bản 1.3.0-rc01
Ngày 10 tháng 1 năm 2024
Phát hành androidx.wear.compose:compose-*:1.3.0-rc01. Phiên bản 1.3.0-rc01 bao gồm các thay đổi sau.
Sửa lỗi
-
Chúng tôi đã cập nhật hình dạng lớn
MaterialThemeđể sử dụng bán kính góc bo tròn 26 dp và giờ đây, Chip vàToggleChipsẽ sử dụng hình dạng này. Thay đổi này là cần thiết để hỗ trợ việc điều chỉnh chiều cao khi nội dung cần thêm chiều cao để phù hợp với cỡ chữ lớn. Nếu không, hình dạng sân vận động hiện tại sẽ cắt bớt một số nội dung văn bản.Hình 1: Văn bản bị cắt ở các góc. Hình 2: Văn bản không bị cắt. Thay đổi này có thể khiến các hoạt động kiểm thử ảnh chụp màn hình bị gián đoạn. (I2e6ae)
Phiên bản 1.3.0-beta02
Ngày 13 tháng 12 năm 2023
Phát hành androidx.wear.compose:compose-*: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 đã khôi phục thao tác vuốt dự kiến trong
BasicSwipeToDismissBox. Điều này đã được thay đổi trong một bản phát hành trước đó, sao cho phần trượt của hiệu ứng chuyển đổi xảy ra khi ngón tay chạm vào màn hình. (Id8e76)
Phiên bản 1.3.0-beta01
Ngày 15 tháng 11 năm 2023
Phát hành androidx.wear.compose:compose-*:1.3.0-beta01. Phiên bản 1.3.0-beta01 bao gồm các thay đổi sau.
Bản phát hành 1.3-beta01 của Compose cho Wear OS 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 Compose 1.3 có chức năng mới sau đây:
SwipeToDismissBoxState,SwipeToDismissValuevàModifier.edgeSwipeToDismissđã được di chuyển từandroidx.wear.compose.materialsangandroidx.wear.compose.foundation, cùng với chế độ triển khai cơ bản của thao tác vuốt để đóng trongBasicSwipeToDismissBox. Điều này cho phép sử dụng tính năng xử lý cử chỉ vuốt để đóng độc lập với Material Design, chẳng hạn như từSwipeDismissableNavHosttrongandroidx.wear.compose.navigation. Bạn vẫn nên dùngSwipeToDismissBoxtừandroidx.wear.compose.materialvới Material Design, vì thành phần này lấy màu từMaterialTheme, sau đó uỷ quyền triển khai phần còn lại choBasicSwipeToDismissBox.SwipeDismissableNavHosthiện hỗ trợ một tham sốuserSwipeEnabledmới để bạn có thể tắt tính năng xử lý thao tác vuốt cho những màn hình không cần đến tính năng này.BasicSwipeToDismissBoxđã cải thiện khả năng xử lý tiêu điểm bằng cách sử dụngHierarchicalFocusCoordinator.SwipeToRevealcó các thành phần kết hợpSwipeToRevealCardvàSwipeToRevealChipmới trong Material, tuân theo hướng dẫn được đề xuất về trải nghiệm người dùng choCardvàChip. Thao tác này cũng hỗ trợ tính năng huỷ cho thao tác phụ.DefaultTextStylegiờ đây sẽ tắt khoảng đệm phông chữ để đảm bảo tính nhất quán trên Nền tảng Android.ChipvàToggleChiphiện điều chỉnh chiều cao để phù hợp với nội dung đã tăng lên do phông chữ lớn để hỗ trợ tiếp cậnPositionIndicatorhiện có các thông số kỹ thuật riêng cho ảnh động mờ dần, mờ dần và thay đổi vị trí. Vì lý do hiệu suất, bạn nên tắt hiệu ứng mờ dần và thay đổi vị trí khi sử dụng với danh sách có thể cuộn.ExpandableStateMappingcung cấp một cách mới để tạoExpandableStateskhi cần tạo theo yêu cầu và không nhất thiết phải có phạm vi@Composable.Placeholderhiện cho phép đặt lại nếu nội dung không còn ở trạng thái sẵn sàng. Ngoài ra, chế độ giảm chuyển động hiện áp dụng cho hiệu ứng lấp lánh và chuyển động lau trênPlaceholder.
Lỗi đã biết
PositionIndicatorban đầu không xuất hiện khi màn hình hiển thị lần đầu. Chúng tôi dự định thực hiện một thay đổi trong phiên bản alpha 1.4 ban đầu để thành phần này xuất hiện ban đầu nhưng không có hiệu ứng chuyển động.
Thay đổi về API
- Chúng tôi đã đổi tên cấp độ Cơ bản
SwipeToDismissBoxthànhBasicSwipeToDismissBox. Điều này giúp phân biệt rõ ràng hơn giữa thành phần cấp Nền tảng và thành phần cấp MaterialSwipeToDismissBox. Lớp sau sẽ lấy màu từMaterialThemeđể dùng trong các lớp phủ và uỷ quyền việc triển khai còn lại choBasicSwipeToDismissBox. (Ibecfc) - Chúng tôi đã đánh dấu
rememberExpandableStateMappinglà thử nghiệm và cải thiện hiệu suất củaexpandableItem. (I5f6bc) - Chúng tôi đã thay thế lớp
SwipeToRevealActiontrong MaterialSwipeToRevealCard và Chip API bằng một API dựa trên khe cắm sử dụng các thành phần kết hợpSwipeToRevealPrimaryAction,SwipeToRevealSecondaryActionvàSwipeToRevealUndoAction. Vui lòng xem mã mẫu để biết ví dụ về cách sử dụng API mới. (Ia8943) - Chúng tôi đã thay thế cờ ảnh động
PositionIndicatorbằng các tham sốAnimationSpec. Bạn có thể tắt từng ảnh động bằng cách truyềnsnaplàmAnimationSpec. (I6c523)
Sửa lỗi
- Chúng tôi đã khắc phục một lỗi do văn bản cong bị hạn chế khi kích thước bị hạn chế (I50efe)
- Chúng tôi đã giải quyết một sự cố NaN có thể xảy ra liên quan đến
curvedComposable(I970eb) - Chúng tôi đã huỷ bỏ việc xoá ảnh động làm nổi bật thay đổi vị trí trên
PositionIndicator. (Ieb424) - Chúng tôi đã xoá lớp material-core cho Chip của Material để cải thiện hiệu suất của lớp này. (If2dcb)
Phiên bản 1.3.0-alpha08
Ngày 18 tháng 10 năm 2023
Phát hành androidx.wear.compose:compose-*:1.3.0-alpha08. Phiên bản 1.3.0-alpha08 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thêm các cờ riêng lẻ vào các phương thức nạp chồng
PositionIndicatorđể kiểm soát các ảnh động khác nhau:showFadeInAnimation,showFadeOutAnimationvàshowPositionAnimation. API cũ đã ngừng hoạt động và chuyển các lệnh gọi đến API mới. Vì lý do hiệu suất và tính nhất quán của trải nghiệm người dùng, khi sử dụngPositionIndicatorvới danh sách có thể di chuyển, bạn nên tắt cờshowFadeInAnimationvàshowPositionAnimation. NếuPositionIndicatorđược dùng làm chỉ báo độc lập, chẳng hạn như để thay đổi âm lượng, thì bạn nên bật cả 3 ảnh động. (I44294) - Chúng tôi đã ngừng sử dụng
SwipeToDismissBoxState,SwipeToDismissValuevàedgeSwipeToDismisscủa Material sau khi di chuyển chức năng Vuốt để đóng sangwear.compose.foundation. Vui lòng thay thế bằng các giá trị tương đươngwear.compose.foundation. (Iee8c9)
Sửa lỗi
- Chúng tôi đã cập nhật hồ sơ cơ sở cho các thư viện nền tảng, thành phần và điều hướng của Wear Compose. (Idb060)
- Chúng tôi đã hoàn nguyên một thay đổi về hành vi đối với
PositionIndicatorđược giới thiệu trong một CL trước đó, sao choPositionIndicatorđược tạo hiệu ứng chuyển động khi màn hình ban đầu hiển thị. Chúng tôi dự định thực hiện một thay đổi tương tự trong phiên bản alpha 1.4 ban đầu, đểPositionIndicatorđược hiển thị ban đầu nhưng không có hiệu ứng chuyển động. (I41843) - Chúng tôi đã giải quyết một số vấn đề về hiệu suất trong
PositionIndicator. (I1c654, b/302399827) - Chúng tôi đã tối ưu hoá hiệu suất của chế độ triển khai mặc định của trình cung cấp trạng thái khám phá bằng thao tác chạm để dựa vào
State<Boolean>thay vì trạng thái phái sinh. (Ieec4d) - Chúng tôi đã đặt các hình chữ nhật
systemGestureExclusioncho Android 13 trở lên. (Ib1f4b)
Phiên bản 1.3.0-alpha07
Ngày 4 tháng 10 năm 2023
Phát hành androidx.wear.compose:compose-*:1.3.0-alpha07. Phiên bản 1.3.0-alpha07 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thêm các cờ riêng lẻ vào
PositionIndicatorđể kiểm soát các ảnh động khác nhau:showFadeInAnimation,showFadeOutAnimationvàshowPositionAnimation. API cũ đã ngừng hoạt động và chuyển các lệnh gọi đến API mới. Vì lý do hiệu suất và tính nhất quán của trải nghiệm người dùng, khi sử dụngPositionIndicatorvới danh sách có thể di chuyển, bạn nên tắt cờshowFadeInAnimationvàshowPositionAnimation. NếuPositionIndicatorđược dùng làm chỉ báo độc lập, chẳng hạn như để thay đổi âm lượng, thì bạn nên bật cả 3 ảnh động. (Ia2d63)
Sửa lỗi
- Chúng tôi đã cải thiện chuyển động vuốt để hiển thị bằng cách thêm ảnh động mờ dần vào văn bản hành động chính, đồng thời làm mờ hành động phụ/thay đổi tỷ lệ biểu tượng khi vuốt mở rộng hoàn toàn. (Ib7223)
- Bạn nên cung cấp khả năng tiếp cận cho các thao tác Vuốt để hiển thị và chúng tôi đã thêm các thao tác hỗ trợ tiếp cận tuỳ chỉnh vào các mẫu Vuốt để hiển thị. (I42224)
- Chúng tôi đã cải thiện hiệu suất của
SwipeToDismissBox, bao gồm cả việc tái cấu trúc để đảm bảo logic ban đầu không kích hoạt quá trình kết hợp lại.SwipeToDismissBoxhiện được vẽ ở kích thước toàn màn hình. (Ie0aa2) - Chúng tôi đã khắc phục lỗi khiến
PositionIndicatorbiến mất không chính xác. (I2091a) - Cải thiện hiệu suất của
PositionIndicatorbằng cách tối ưu hoá việc kết hợp lại. Sau đó, các cờ mới để kiểm soát ảnh động (fadeIn,fadeOutvàpositionChange) đã được thêm (xem phần Thay đổi về API) (Ifac7d) - Chúng tôi đã thêm các bài kiểm thử Microbenchmark cho
PositionIndicator(Idf875)
Phiên bản 1.3.0-alpha06
Ngày 20 tháng 9 năm 2023
Phát hành androidx.wear.compose:compose-*:1.3.0-alpha06. Phiên bản 1.3.0-alpha06 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã thêm tính năng hỗ trợ cho
Modifier.edgeSwipeToDismissbằngSwipeToReveal. (I95774, b/293444286) - Chúng tôi đã thêm các mẫu cho
SwipeToRevealChipvàSwipeToRevealCardcủa Material. (Ieb974) - Chúng tôi đã cập nhật hồ sơ cơ sở cho các thư viện Wear Compose Foundation và Material. (I1dd1f)
Phiên bản 1.3.0-alpha05
Ngày 6 tháng 9 năm 2023
Phát hành androidx.wear.compose:compose-*:1.3.0-alpha05. Phiên bản 1.3.0-alpha05 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã thêm thao tác xử lý trong tính năng Vuốt để hiển thị để chỉ có thể vuốt một mục tại một thời điểm. (I3cd7a)
- Cải thiện tài liệu về
ScalingLazyColumnDefaultsđể phù hợp hơn với hành vi thực tế củaScalingLazyColumnDefaults. (I886d3)
Phiên bản 1.3.0-alpha04
Ngày 23 tháng 8 năm 2023
Phát hành androidx.wear.compose:compose-*: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
- Chúng tôi đã thêm tính năng hỗ trợ huỷ cho thao tác phụ của
SwipeToReveal. (I7a22d)
Thay đổi về API
- Thêm
HorizontalPageIndicatorvào thư viện Wear Material3. (Ifee99) - Cập nhật công cụ xem trước Wear Compose để sử dụng thư viện
androidx.wear.tooling.preview. (Ib036e)
Sửa lỗi
- Khắc phục lỗi trong các nút tròn, trong đó các đối tượng sửa đổi không được liên kết đúng cách. (I5e162)
Phiên bản 1.3.0-alpha03
Ngày 9 tháng 8 năm 2023
Phát hành androidx.wear.compose:compose-*:1.3.0-alpha03. Phiên bản 1.3.0-alpha03 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thêm 2 thành phần kết hợp mới trong Material để triển khai
SwipeToRevealbằng Thẻ và Chip. Các thành phần kết hợp này tuân theo hướng dẫn về trải nghiệm người dùng được đề xuất trên thành phần và giúp nhà phát triển dễ dàng triển khaiSwipeToRevealbằng các thành phần hiện có trong Wear Material. (I7ec65) - Chúng tôi đã bật chú thích
FloatRangelàm các điều kiện ràng buộc API. Trước đây, các điều kiện này được nêu trong phần bình luận. (Icb401)
Sửa lỗi
- Chúng tôi đã di chuyển logic cuộn ban đầu của
ScalingLazyColumnvào bên trongonGloballyPositioned(). (Ic90f1) - Giờ đây, chúng tôi đang sử dụng
drawWithCachetrongPositionIndicator,ProgressIndicatorvàSelectionControlsđể tối ưu hoá việc phân bổ nét vẽ. (I5f225, b/288234617) - Chúng tôi đã khắc phục chế độ hiển thị dấu đánh dấu trong hộp đánh dấu ở trạng thái bị vô hiệu hoá. (Ib25bf)
- Chúng tôi đã cập nhật
Placeholderđể cho phép đặt lại nhằm hiển thị phần giữ chỗ nếu nội dung không còn ở trạng thái sẵn sàng. (Ibd820) - Chúng tôi đã khắc phục một số lỗi đối với các bài kiểm thử
Placeholderkhông ổn định (Idb560)
Phiên bản 1.3.0-alpha02
Ngày 26 tháng 7 năm 2023
Phát hành androidx.wear.compose:compose-*:1.3.0-alpha02. Phiên bản 1.3.0-alpha02 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã cung cấp
ExpandableStateMapping, một cách mới để tạoExpandableStates, cho những trường hợp cần tạo theo yêu cầu, không nhất thiết phải nằm trong phạm vi@Composable(Iff9e0) SwipeToDismissBoxđã được di chuyển từ góiandroidx.wear.compose.materialsang góiandroidx.wear.compose.foundation. (I275fb)- Cập nhật các tệp API để chú thích việc tạm ngưng khả năng tương thích. (I8e87a, b/287516207)
- Chúng tôi đã công khai các hằng số chiều cao cho
Chip,CompactChipvàToggleChip(Idbfde) - Chúng tôi đã công khai khoảng đệm ngang và dọc cho
ChipvàCompactChip. (Ieeaf7) - Thêm chức năng tắt tính năng xử lý thao tác vuốt trong
SwipeDismissableNavHostthông qua tham sốuserSwipeEnabledmới. (Id2a0b, b/230865655) - Chúng tôi đã cập nhật thư viện Điều hướng Wear Compose để sử dụng
SwipeToDismissBoxmới từ Wear Compose Foundation. (I4ff8e)
Sửa lỗi
- Chúng tôi đã khắc phục một lỗi về thứ tự z, trong đó
expandedItemkhông hiển thị nội dung chính xác sau khi nhấp vào hành vi của nút khi chúng có các nút. (I1899d, b/289991514) - Cải thiện khả năng xử lý tiêu điểm của
SwipeToDismissBox(và do đó làSwipeDismissableNavHost) bằng cách sử dụngHierarchicalFocusCoordinator(I45362, b/277852486) - Chúng tôi đã khắc phục vấn đề về việc xử lý cử chỉ trong
SwipeableV2. (I89737) - Chúng tôi đã hoàn tất các hồ sơ cơ sở cho bản phát hành 1.2. (Id5740)
- Sau khi di chuyển
SwipeToDismissBoxsang Foundation, quá trình triển khai MaterialSwipeToDismissBoxhiện chuyển tiếp đến Foundation và cung cấp các giá trị màu mặc định từ giao diện của nó.(If8451) - Chúng tôi đã thêm ngữ nghĩa tiêu đề vào
ListHeader. (Ic5420) - Giờ đây,
ChipvàToggleChipsẽ điều chỉnh chiều cao để phù hợp với nội dung đã tăng lên do phông chữ lớn để hỗ trợ tiếp cận (khi cần). (Iaf302) - Đã sửa một lỗi trong vai trò ngữ nghĩa của vùng có thể nhấn của
SplitToggleChipđể hỗ trợ tiếp cận. (Ieed3a) - Chế độ giảm chuyển động hiện tắt hiệu ứng lấp lánh và chuyển động xoá trên các phần giữ chỗ. (I91046)
SteppervàInlineSliderhiện hỗ trợ tính năng nhấp nhiều lần khi nhấn và giữ để bạn có thể nhanh chóng tăng/giảm giá trị củaSteppervàInlineSliderbằng cách giữ nút + hoặc -. (I27359)
Phiên bản 1.3.0-alpha01
Ngày 21 tháng 6 năm 2023
Phát hành androidx.wear.compose:compose-*:1.3.0-alpha01. Phiên bản 1.3.0-alpha01 bao gồm các thay đổi sau.
Sửa lỗi
- Như đã thông báo trong
1.2.0-alpha07và1.2.0-alpha10, chúng tôi hiện đang thay đổiDefaultTextStyleđể tắt khoảng đệm phông chữ nhằm đảm bảo tính nhất quán trên Nền tảng Android. Điều này sẽ giải quyết một số trường hợp văn bản bị cắt với cỡ chữ lớn và cũng có thể ảnh hưởng đến bố cục màn hình, do đó, bạn cần cập nhật các thử nghiệm ảnh chụp màn hình. Ví dụ: chúng ta thấy văn bản bị cắt ở đây (Ic6a86)
- Không còn xuất hiện khi bạn tắt khoảng đệm phông chữ:
- Chúng tôi đã cập nhật
wear.compose.foundationthành một phần phụ thuộc API củawear.compose.material(I72004, b/285404743) - Chúng tôi đã khắc phục một lỗi trong
SwipeToDismissBox. Giờ đây, các khoá nền và nội dung sẽ được truyền đến khối ghi nhớ để các đối tượng sửa đổi mới được tạo khi nội dung hoặc nền thay đổi. (Ib876c, b/280392104) - Chúng tôi đã cập nhật
TimeTextđể sử dụng ngôn ngữ khi chọn định dạng cho thời gian 12 hoặc 24 giờ. (If4a3d) - Chúng tôi đã khắc phục sự không nhất quán trong các tham số mặc định
SwipeToDismissBoxcontentScrimColor. (I2d70f) - Chúng tôi đã cải thiện khả năng xử lý chuyển động trong
SwipeToReveal. (I28fb7)
Lỗi đã biết
- Hỗ trợ cỡ chữ do người dùng định cấu hình là một yêu cầu về khả năng hỗ trợ tiếp cận. Chúng tôi biết rằng Chip có nhiều dòng có thể dẫn đến việc văn bản bị cắt khi hiển thị với cỡ chữ lớn. Vì vậy, chúng tôi sẽ cập nhật Chip trong phiên bản alpha 1.3 ban đầu để điều chỉnh chiều cao trong những trường hợp đó.
Phiên bản 1.2
Phiên bản 1.2.1
Ngày 18 tháng 10 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.1. Phiên bản 1.2.1 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục lỗi khi
PositionIndicatorbiến mất không chính xác. (7a167f)
Phiên bản 1.2.0
Ngày 9 tháng 8 năm 2023
Phát hành androidx.wear.compose:compose-*: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
- Bản phát hành ổn định của Compose cho Wear OS 1.2.0 (đọc thêm)
- Để biết danh sách các thay đổi chính trong Wear Compose 1.2, hãy xem ghi chú phát hành của (Compose cho Wear OS 1.2 Beta01)
Phiên bản 1.2.0-rc01
Ngày 26 tháng 7 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-rc01. Phiên bản 1.2.0-rc01 bao gồm bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã hoàn tất hồ sơ cơ sở cho bản phát hành 1.2 (Id5740)
Phiên bản 1.2.0-beta02
Ngày 7 tháng 6 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-beta02. Phiên bản 1.2.0-beta02 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi đã thêm biến
LocalReduceMotionCompositionLocalthử nghiệm mới, giúp vô hiệu hoá tính năng thu phóng và làm mờ trênScalingLazyColumn. (I58024)
Sửa lỗi
- Chúng tôi đã cập nhật hồ sơ cơ sở cho các thư viện nền tảng và thư viện thành phần Wear Compose(I4725d)
- Chúng tôi đã khắc phục sự không nhất quán trong các giá trị mặc định cho tham số
SwipeToDismissBoxcontentScrimColor(I2d70f) - Chúng tôi đã cố định giá trị mặc định
DefaultTextStyleđược dùng cho chế độ cài đặtIncludeFontPadding(I737ed)
Phiên bản 1.2.0-beta01
Ngày 24 tháng 5 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-beta01. Phiên bản 1.2.0-beta01 bao gồm các thay đổi sau.
Những điểm mới trong thư viện Compose dành cho Wear OS 1.2
Bản phát hành 1.2-beta01 của Compose cho Wear OS 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 Compose 1.2 có chức năng mới sau đây:
expandableItemvàexpandableItemslà 2 thành phầnFoundationmới hỗ trợ việc mở rộng các mục trong mộtScalingLazyColumn. Sử dụngexpandableItemcho một mục duy nhất có thể mở rộng, chẳng hạn như Văn bản có số dòng. Sử dụngexpandableItemscho một nhóm các mục có thể mở rộng vàexpandableButtonđể đơn giản hoá việc tạo một nút thu gọn sau khi nội dung được mở rộng.HierarchicalFocusCoordinator– thành phần kết hợp thử nghiệm này cho phép đánh dấu các cây phụ của cấu trúc là đã bật hoặc đã tắt tiêu điểm.Picker– API hiện cóuserScrollEnabledđể kiểm soát việc bộ chọn có hoạt động cho thao tác cuộn của người dùng hay không.PickerGroup– một thành phần kết hợp mới để xử lý nhiều bộ chọn cùng nhau. Lớp này xử lý tiêu điểm giữa các bộ chọn bằng APIHierarchicalFocusCoordinatorvà hỗ trợ tự động căn giữa các mục trong bộ chọn.Placeholder– chúng tôi đã cập nhật hiệu ứng sáng lên và hiệu ứng "Quét chuyển". Hiệu ứng quét chuyển hiện được áp dụng ngay lập tức khi nội dung sẵn sàng.ScalingLazyColumn– chúng tôi đã di chuyểnScalingLazyColumnvà các lớp liên kết từandroidx.wear.compose.material.ScalingLazyColumnsangandroidx.wear.compose.foundation.lazy.ScalingLazyColumn. Vui lòng cập nhật để sử dụng phiên bảnFoundation.Lazy.SwipeToReveal– chúng tôi đã thêm tính năng hỗ trợ thử nghiệm cho thao tác vuốt để hiển thị như một cách truy cập vào các thao tác phụ, bổ sung cho mẫu "nhấn và giữ" hiện có.Stepper– hiện có một phương thức nạp chồng với tham sốenableRangeSemanticsbổ sung để hỗ trợ việc tắt ngữ nghĩa phạm vi mặc định.Previews– chúng tôi đã thêm các chú thích tuỳ chỉnh sau đây để xem trước các thành phần kết hợp trên màn hình của thiết bị Wear:WearPreviewSmallRoundxem trước thành phần kết hợp trên một thiết bị nhỏ, tròn;WearPreviewLargeRoundxem trước thành phần kết hợp trên một thiết bị tròn lớn;WearPreviewSquarexem trước thành phần kết hợp trên một thiết bị vuông. Ngoài ra, các chú thích sau và chú thích xem trước nhiều lần:WearPreviewFontScalesxem trước các thành phần kết hợp trên một thiết bị đeo với nhiều kích thước phông chữ, trong khiWearPreviewDevicesxem trước các thành phần kết hợp trên nhiều thiết bị đeo.- Chúng tôi đã thêm
DefaultTextStylevào Wear Compose. Thuộc tính này đặt thuộc tínhPlatformTextStyle.includeFontPaddingthành true theo mặc định (đây là chế độ cài đặt hiện tại). Điều này sẽ cho phép chúng tôi đồng bộ hoá việc tắt khoảng đệm phông chữ theo mặc định với các thư viện Compose trong phiên bản alpha 1.3 ban đầu – hãy xem 1.2.0-alpha10 để biết thêm thông tin.
Tính năng mới
- Chúng tôi đã thêm tính năng hỗ trợ thử nghiệm cho hiệu ứng thu nhỏ và làm mờ bị tắt khi chế độ cài đặt reduce_motion được bật. (I58024)
Sửa lỗi
- Cải thiện tài liệu cho
angularWidthDptrongCurvedSize.kt(Iab75c) SwipeDismissableNavHosthiện ghi lại một cảnh báo kèm theo các nguyên nhân có thể gây ra ngăn xếp sau trống. Điều này nhằm ngăn chặn các sự cố không mong muốn doIllegalArgumentExceptionđược gửi khi ngăn xếp lui trống. (I04a81, b/277700155)
Phiên bản 1.2.0-alpha10
Ngày 10 tháng 5 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-alpha10. Phiên bản 1.2.0-alpha10 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi đã thêm tính năng hỗ trợ thao tác Vuốt để hiện, nhằm giúp bạn truy cập vào các thao tác phụ. Mẫu này bổ sung cho mẫu "nhấn và giữ", đây là cách hiện tại mà người dùng có thể thực hiện để hiển thị (các) thao tác phụ. (I60862)
Thay đổi về API
- Chúng tôi đã thêm
RevealScopevào các thành phần kết hợp thao tác trongSwipeToReveal, cho phép truy cập vào độ lệch mà tại đó các thao tác bổ sung được hiển thị. (I3fd56)
Sửa lỗi
- Khắc phục vấn đề
ScalingLazyColumnbị kẹt trên Wear API 33 sau khi hất (Ic4599) - Chúng tôi đã cải thiện hiệu suất của
PositionIndicatorđể giảm tình trạng giật. (I35e92) - Chúng tôi đã khắc phục một lỗi trong Chip và
CompactChip, trong đó vai trò ngữ nghĩa không còn được đặt thànhRole.Button. (I93f91, b/277326264)
Lỗi đã biết
Chúng tôi đã xác định được một lỗi trong Android Studio khiến quá trình kết xuất bản xem trước không thành công khi được chú thích bằng @WearPreviewDevices và @WearPreviewFontScales. Chúng tôi dự kiến sẽ sớm phát hành bản sửa lỗi. Xin lưu ý rằng các chú thích xem trước khác của Wear hoạt động như dự kiến trong Android Studio Giraffe 2022.3.1 trở lên.
Trong phiên bản 1.2.0-alpha07, chúng tôi đã thêm DefaultTextStyle vào Wear Compose, duy trì giá trị PlatformTextStyle.includeFontPadding hiện có là true – để biết thông tin cơ bản, hãy xem phần Khắc phục khoảng đệm phông chữ trong Compose. Chúng tôi sẽ thay đổi DefaultTextStyle để tắt khoảng đệm phông chữ trong phiên bản alpha 1.3 ban đầu, nhằm đảm bảo tính nhất quán trên Nền tảng Android. Điều này sẽ giải quyết một số trường hợp văn bản bị cắt với cỡ chữ lớn và cũng có thể ảnh hưởng đến bố cục màn hình, do đó, bạn cần cập nhật các kiểm thử ảnh chụp màn hình. Ví dụ: với cỡ chữ lớn, chúng ta thấy văn bản bị cắt tại đây:
- Không còn xuất hiện khi bạn tắt khoảng đệm phông chữ:
Bạn có thể áp dụng chế độ cài đặt mới ngay bây giờ bằng cách ghi đè kiểu chữ trong giao diện của mình – hãy xem mã ví dụ.
Phiên bản 1.2.0-alpha09
Ngày 19 tháng 4 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-alpha09. Phiên bản 1.2.0-alpha09 bao gồm các thay đổi sau.
Thay đổi về API
- Thêm
angularSizeDpvào APICurvedModifierđể đặt chiều rộng góc theo DP (I89a52)
Sửa lỗi
- Chúng tôi đã khắc phục các vấn đề về khả năng hỗ trợ tiếp cận trong bản minh hoạ bộ chọn giờ(Id0eb7)
Phiên bản 1.2.0-alpha08
Ngày 5 tháng 4 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-alpha08. Phiên bản 1.2.0-alpha08 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã đổi tên
ExpandableItemsStatethànhExpandableState. (If85ea) - Chúng tôi đã thêm
expandableButtonđể đơn giản hoá việc tạo một nút thu gọn khi nội dung được mở rộng, đồng thời cập nhật các ví dụ về thành phần có thể mở rộng. (Iae309)
Sửa lỗi
- Cải thiện các mẫu có thể mở rộng để cho thấy nhiều khả năng hơn. Đã sửa đổi ảnh động của
expandableItemđể giữ nội dung ở giữa trong suốt ảnh động. (I2f637) - Đã cập nhật
ToggleControlsđể tránh các thành phần kết hợp lại không cần thiết khi tạo ảnh động cho màu theo cách thủ công bằng cách sử dụng Trạng thái. (I5d319)
Phiên bản 1.2.0-alpha07
Ngày 22 tháng 3 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-alpha07. Phiên bản 1.2.0-alpha07 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã di chuyển các thành phần Expandable Item (được thêm trong phiên bản 1.2.0-alpha06) từ material sang foundation, vì chúng không có mối liên hệ nào có ý nghĩa với
MaterialTheme. (Ib0525)
Sửa lỗi
- Chúng tôi đã khắc phục sự cố xảy ra trên một màn hình sử dụng
PickerGroupbằng cách đảm bảo rằngPickerGroupxử lý tiêu điểm một cách chính xác khi không có Bộ chọn nào có tiêu điểm. Ngoài ra, chúng tôi cũng đã thêm tính năng hỗ trợ cuộn RSB trong bản minh hoạ Bộ chọn. (If8c19) - Chúng tôi đã cải thiện hiệu ứng chuyển đổi hộp thoại – hiệu ứng chuyển đổi mở đầu hiện mượt mà hơn để phù hợp với hiệu ứng chuyển đổi kết thúc. (Ib5af9)
- Chúng tôi đã thêm
DefaultTextStylevào Wear Compose. Thuộc tính này đặt thuộc tínhPlatformTextStyle.includeFontPaddingthành true theo mặc định (đây là chế độ cài đặt hiện tại). Điều này sẽ cho phép chúng ta đồng bộ hoá việc tắt khoảng đệm phông chữ theo mặc định với các thư viện Compose trong tương lai – hãy xem (Khắc phục khoảng đệm phông chữ trong Compose) để biết thông tin cơ bản. (I2aee8) - Đã hoàn nguyên một phần phụ thuộc xem trước
UpsideDownCakethông qua activity-compose, phần này đã chặn việc xuất bản ứng dụng lên Cửa hàng Google Play. (I6443d)
Phiên bản 1.2.0-alpha06
Ngày 8 tháng 3 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-alpha06. Phiên bản 1.2.0-alpha06 bao gồm các thay đổi sau.
Thay đổi về API
- Thêm thành phần
CurvedBoxđể đặt các thành phần lên trên nhau trong thế giới cong. (I29200) - Đã thêm(các) mục có thể mở rộng – 2 thành phần mới để hỗ trợ một nhóm các mục có thể mở rộng trong
ScalingLazyColumnhoặc một mục đơn có thể mở rộng, chẳng hạn như Văn bản có số dòng mở rộng. (I95dd5) - Chúng tôi đã thêm các chú thích tuỳ chỉnh sau đây để xem trước các thành phần kết hợp trên màn hình Wear:
WearPreviewSmallRoundxem trước thành phần kết hợp trên một thiết bị nhỏ, hình tròn;WearPreviewLargeRoundxem trước thành phần kết hợp trên một thiết bị lớn, hình tròn;WearPreviewSquarexem trước thành phần kết hợp trên một thiết bị hình vuông. Ngoài ra, các chú thích sau và chú thích xem trước nhiều lần:WearPreviewFontScalesxem trước các thành phần kết hợp trên một thiết bị đeo với nhiều kích thước phông chữ, trong khiWearPreviewDevicesxem trước các thành phần kết hợp trên nhiều thiết bị đeo. Để sử dụng các bản xem trước này, bạn phải sử dụng Android Studio mới nhất (Giraffe Canary 6) trở lên. Xin lưu ý rằng nếu những chú thích này không phù hợp với mục đích của bạn, thì bạn vẫn có thể sử dụng bản xem trước và hỗ trợ các chế độ tuỳ chỉnh khác thông qua các tham số. (I397ff) - Chúng tôi đã đánh dấu
HierarchicalFocusCoordinatorlà thử nghiệm trong khi xem xét việc di chuyển thành phần này vào các thư viện Compose cốt lõi, do tính ứng dụng rộng rãi của thành phần này. (I3a768)
Sửa lỗi
- Đã sửa một lỗi trên
HierarchicalFocusCoordinator, khi hàm lambda được truyền vào cho tham sốfocusEnabledbị thay đổi, giờ đây, chúng tôi sẽ sử dụng hàm lambda mới một cách chính xác. (Icb353) - Chúng tôi đã cập nhật màu nội dung bị tắt mặc định thành Nền khi dùng màu chính làm nền trong
Button,CompactButton,Chip,CompactChipvàToggleButton. Điều này giúp cải thiện độ tương phản để tăng khả năng tiếp cận. (I527cc)
Phiên bản 1.2.0-alpha05
Ngày 22 tháng 2 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-alpha05. Phiên bản 1.2.0-alpha05 bao gồm các thay đổi sau.
Các thay đổi về API
- Cập nhật API
PickerGroupđể cho phép truyền các giới hạn tối thiểu đến thành phần kết hợp nếu muốn. Khi đặt thuộc tính này là true, các giới hạn tối thiểu được chuyển từ thành phần kết hợp mẹ sẽ được cho phép trênPickerGroup. Nếu bạn đặt thuộc tính này là false,PickerGroupsẽ đặt lại các giới hạn tối thiểu. (I3e046) - Chúng tôi đã thêm
animateScrollToOptionvào Picker API (API Bộ chọn) để hỗ trợ ảnh động có lập trình theo tuỳ chọn cụ thể của Bộ chọn (I6fe67)
Sửa lỗi
- Chúng tôi đã cập nhật
HorizontalPageIndicatorđể hỗ trợ bố cục từ phải sang trái. (Ia4359) - Thêm thử nghiệm Ảnh chụp màn hình cho bố cục từ phải sang trái trong
HorizontalPageIndicator(I6fbb8) - Thêm các thử nghiệm khác vào
SwipeDismissableNavHostTestsử dụngTestNavHostController(I61d54)
Phiên bản 1.2.0-alpha04
Ngày 8 tháng 2 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-alpha04. Phiên bản 1.2.0-alpha04 bao gồm các thay đổi sau.
Tính năng mới
PickerGroupđể xử lý nhiều bộ chọn cùng nhau bằng API tiêu điểm. Mã này xử lý tiêu điểm giữa các bộ chọn khác nhau, hỗ trợ bộ chọn tự động căn giữa dựa vào các tham số và cho phép các nhà phát triển thay đổi tiêu điểm giữa các bộ chọn khác nhau trong khi xử lý các sự kiện của nhóm. Ở chế độ TalkBack,PickerGroupxử lý tiêu điểm TalkBack bằng cách di chuyển tiêu điểm đến Bộ chọn đã chọn trong nhóm. (I60840)
Các thay đổi về API
- Chúng tôi đã thêm phương thức nạp chồng cho Stepper bằng một tham số
enableRangeSemanticsbổ sung để hỗ trợ việc tắt ngữ nghĩa phạm vi mặc định (Ia61d4)
Sửa lỗi
- Cho phép
ScalingLazyColumnlồng trong một trang cuộn theo chiều ngang (Iec3f8, b/266555016) - Cải thiện kdocs Stepper và dọn dẹp các bài kiểm thử
StepperTest. (Ic118e) - Cập nhật phần phụ thuộc
androidx.navigationlên phiên bản 2.5.3 (If58ed)
Phiên bản 1.2.0-alpha03
Ngày 25 tháng 1 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-alpha03. Phiên bản 1.2.0-alpha03 bao gồm các thay đổi sau.
Những thay đổi về API
- Chúng tôi đã di chuyển
ScalingLazyColumn(và các lớp liên kết) từandroidx.wear.compose.material.ScalingLazyColumnsangandrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn(xem ví dụ này về quy trình di chuyển). Vị trí mới này phù hợp hơn với vị trí củacompose.foundation.lazy.LazyColumnvà tự nhiên hơn vì không phải là thành phần Material được định sẵn. Thay đổi này đang diễn ra để chuẩn bị cho thư viện Material3 mới mà chúng tôi sẽ triển khai song song với thư viện Material hiện có. (I060e7)
Những thay đổi sau đây nằm trong phạm vi di chuyển ScalingLazyColumn từ Material sang Foundation.Lazy:
- Ngừng sử dụng
PositionIndicatorAPI nhắm đếnScalingLazyColumncủa Material, vui lòng cập nhật lênFoundation.Lazy ScalingLazyColumn. Ngoài ra, trườnganchorTypeđã được thêm vàoScalingLazyListLayoutInfo. (I29d95) ScalingLazyColumnđược đánh dấu là không dùng nữa trong gói Wear Compose Material (I16d34)- Cập nhật đối tượng sửa đổi
ScrollAwayđể sử dụngScalingLazyListStatequa Wear ComposeFoundation.Lazyvà ngừng sử dụng phương thức nạp chồng lấyScalingLazyListStatequa Wear Compose Material. (Ifc42c) - Cập nhật Dialog API để sử dụng
ScalingLazyListStatequaFoundation.Lazyvà ngừng sử dụng các phương thức nạp chồng đã sử dụng MaterialScalingLazyListState(Ic8960) - Cập nhật các Picker API để sử dụng
ScalingParamsquaFoundation.Lazyvà ngừng sử dụng các phương thức nạp chồng đã sử dụng MaterialScalingParams. (Idc3d8)
Sửa lỗi
- Khắc phục lỗi dẫn đến các quy trình kết hợp lại không cần thiết trong
ScalingLazyListState.centerItemIndexbằng cách đảm bảo rằng lỗi này chỉ triển khai bản cập nhật khi giá trị thực sự thay đổi (Ia9f38) - Cải thiện hiệu suất của
SwipeToDismissBox(I3933b) - Thêm các bài kiểm thử theo điểm chuẩn cho
ScalingLazyColumntrong Wear Compose Foundation (Ie00f9) - Cập nhật một số phương thức lớp
ScalingLazyColumnnội bộ trong Material để sử dụng các phương thức tương đương quaFoundation.Lazy(I38aab) - Khắc phục một số vấn đề trong kiểm thử nghiệm Bộ chọn (Picker) và bổ sung một số bài kiểm thử khác để kiểm tra tính năng cuộn có sai số (I6ac34)
- Di chuyển các Bản minh hoạ tích hợp
ScalingLazyColumnphụ thuộc vàoFoundation.Lazythay vì MaterialScalingLazyColumn(Ic6caa) - Thêm các tham số
fromDate/toDatekhông bắt buộc vào bản minh hoạDatePicker(I961cd)
Phiên bản 1.2.0-alpha02
Ngày 11 tháng 1 năm 2023
Phát hành androidx.wear.compose:compose-*:1.2.0-alpha02. Phiên bản 1.2.0-alpha02 bao gồm các thay đổi sau.
Các thay đổi về API
- Giờ đây, các hoạt động kiểm thử giao diện người dùng trong Android Compose sẽ chạy lệnh chuyển bố cục cho từng khung khi thực thi các khung để chuyển sang trạng thái rảnh (ví dụ: qua
waitForIdle). Việc này có thể ảnh hưởng đến các hoạt động kiểm thử xác nhận trên từng khung ảnh động bố cục riêng lẻ. (I8ea08, b/222093277) - Thêm tham số
minLinesvào Wear Text để hoạt động nhất quán vớiBasicText(I24874) - Công khai
CompactChipTapTargetPaddingđể xuất hiện trong tài liệu (If1e70, b/234119038)
Sửa lỗi
- Vô hiệu hoá bản dựng đa nền tảng cho các gói
wear.compose(Iad3d7) - Sửa kdocs cho
scrollToOption(I6f9a0) - Cập nhật
PlaceholderState.rememberPlaceholderState()để sử dụngrememberUpdatedStatethành trạng thái sẽ cập nhật nếu hàm lambda làonContentReady. (I02635, b/260343754) - Chúng tôi đã khắc phục sự cố dao động văn bản trong thành phần
Pickerbằng cách tận dụng chiến lược tổng hợp mới được thêm vàoModifier.graphicsLayer. (I99302) - Chúng tôi đã khắc phục lỗi gây ra hiện tượng nhấp nháy trong bản minh hoạ
DatePicker(I660bd) - Chúng tôi đã cải thiện chức năng hỗ trợ tiếp cận cho các bản minh hoạ bộ chọn ngày và giờ (định dạng 12 giờ) (I05e12)
- Chúng tôi đã cập nhật bản minh hoạ bộ chọn ngày và giờ để các bộ chọn không bị những thay đổi của RSB làm ảnh hưởng khi bị bỏ chọn (I4aecb)
Phiên bản 1.2.0-alpha01
Ngày 7 tháng 12 năm 2022
Phát hành androidx.wear.compose:compose-*: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
- Chúng tôi cập nhật chức năng Phần giữ chỗ thử nghiệm để áp dụng hiệu ứng "Wipe Off" ("Quét chuyển") ngay lập tức khi nội dung sẵn sàng thay vì đợi vòng lặp ảnh động tiếp theo bắt đầu. Chúng tôi cũng thực hiện một số điểm cập nhật đối với hiệu ứng sáng lên và quét chuyển. (I5a7f4)
Các thay đổi về API
- Chúng tôi đã thêm thành phần kết hợp
HierarchicalFocusCoordinatorđể cho phép đánh dấu các cây phụ của cấu trúc (composition) là đã bật hoặc đã tắt tiêu điểm.(I827cb) - Chúng tôi đã thêm một thuộc tính mới để ghi đè vai trò ngữ nghĩa cho
ToggleButton.(I67132) - Chúng tôi đã cập nhật
TimeTextDefaults.TimeFormat12Hoursđể xoá AM/PM trongTimeText. Việc này sẽ thay đổi giá trị mặc định của các tham sốtimeSourcetrong APITimeText. (I1eb7f) - Chúng tôi đã mở rộng API Bộ chọn để cải thiện khả năng tiếp cận cho các màn hình có nhiều bộ chọn. Có một thuộc tính mới
userScrollEnabledgiúp kiểm soát việc bộ chọn có hoạt động cho thao tác cuộn của người dùng hay không. (I3c3aa)
Sửa lỗi
- Chúng tôi thay đổi chiều rộng đường viền mặc định của
OutlinedButton/OutlinedCompactButtontừ 2.dp thành 1.dp để phù hợp với các thông số kỹ thuật trong trải nghiệm người dùng cuối. (Icf84d) - Để giảm hiệu lực của mục đầu tiên được thêm vào
ScalingLazyColumntrống xuất hiện để cuộn vào vị trí, chúng tôi đã thêmautoCentering topPaddingước tính khi nội dung trống. Thay đổi này sẽ tính toán khoảng đệm trên cùng cần thiết bằng cách giả định mục ban đầu có chiều cao là 0.dp. Đối vớiScalingLazyListAnchorType.ItemStart, giá trị này sẽ tính toán chính xác khoảng đệm trên cùng. Đối vớiScalingLazyListAnchorType.ItemCenter, phép tính này sẽ không chính xác do chiều cao của các mục cần để xác định đúng kích thước cho nội dung dẫn đến một hiệu ứng cuộn nhỏ vào vị trí dựa trên chiều cao thực của các mục.(I239a4) - Chúng tôi đã cập nhật màn nền được áp dụng cho ảnh động
SwipeToDismissđể phù hợp với nền tảng Wear. (I9003e) - Chúng tôi đã khắc phục việc xử lý
PositionIndicatorcủaLazyListStatevàScalingLazyListStatecho các mục danh sách có kích thước 0 là để tránh lỗi chia cho 0.(Ic28dd)
Phiên bản 1.1
Phiên bản 1.1.2
Ngày 8 tháng 2 năm 2023
Phát hành androidx.wear.compose:compose-foundation:1.1.2, androidx.wear.compose:compose-material:1.1.2 và androidx.wear.compose:compose-navigation:1.1.2. Phiên bản 1.1.2 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục lỗi dẫn đến các quy trình kết hợp lại không cần thiết trong
ScalingLazyListState.centerItemIndexbằng cách đảm bảo rằng lỗi này chỉ triển khai bản cập nhật khi giá trị thực sự thay đổi (Ia9f38)
Phiên bản 1.1.1
Ngày 11 tháng 1 năm 2023
Phát hành androidx.wear.compose:compose-foundation:1.1.1, androidx.wear.compose:compose-material:1.1.1 và androidx.wear.compose:compose-navigation:1.1.1. Phiên bản 1.1.1 bao gồm các thay đổi sau.
Sửa lỗi
- Cập nhật
PlaceholderState.rememberPlaceholderState()để sử dụngrememberUpdatedStatethành trạng thái sẽ cập nhật nếu hàm lambda làonContentReady. (I02635, b/260343754)
Phiên bản 1.1.0
Ngày 7 tháng 12 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.1.0, androidx.wear.compose:compose-material:1.1.0 và androidx.wear.compose:compose-navigation: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
- Bản phát hành chính thức của Compose cho Wear OS 1.1.0 (đọc thêm).
- Để biết danh sách các thay đổi chính trong Wear Compose 1.1, hãy xem các ghi chú phát hành của (Compose cho Wear OS 1.1 Beta01).
Tính năng mới
- Chúng tôi cập nhật chức năng Phần giữ chỗ thử nghiệm để áp dụng hiệu ứng "Wipe Off" ("Quét chuyển") ngay lập tức khi nội dung sẵn sàng thay vì đợi vòng lặp ảnh động tiếp theo bắt đầu. Chúng tôi cũng thực hiện một số điểm cập nhật đối với hiệu ứng sáng lên và quét chuyển. (I5a7f4)
Sửa lỗi
- Chúng tôi thay đổi chiều rộng đường viền mặc định của
OutlinedButton/OutlinedCompactButtontừ 2.dp thành 1.dp để phù hợp với các thông số kỹ thuật trong trải nghiệm người dùng cuối. (Icf84d) - Để giảm hiệu lực của mục đầu tiên được thêm vào
ScalingLazyColumntrống xuất hiện để cuộn vào vị trí, chúng tôi đã thêmautoCentering topPaddingước tính khi nội dung trống. Thay đổi này sẽ tính toán khoảng đệm trên cùng cần thiết bằng cách giả định mục ban đầu có chiều cao là 0.dp. Đối vớiScalingLazyListAnchorType.ItemStart, giá trị này sẽ tính toán chính xác khoảng đệm trên cùng. Đối vớiScalingLazyListAnchorType.ItemCenter, phép tính này sẽ không chính xác do chiều cao của các mục cần để xác định đúng kích thước cho nội dung dẫn đến một hiệu ứng cuộn nhỏ vào vị trí dựa trên chiều cao thực của các mục.(I239a4) - Chúng tôi đã cập nhật màn nền được áp dụng cho ảnh động
SwipeToDismissđể phù hợp với nền tảng Wear.(I9003e) - Chúng tôi đã khắc phục việc xử lý
PositionIndicatorcủaLazyListStatevàScalingLazyListStatecho các mục danh sách có kích thước 0 là để tránh lỗi chia cho 0.(Ic28dd)
Phiên bản 1.1.0-rc01
Ngày 9 tháng 11 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.1.0-rc01, androidx.wear.compose:compose-material:1.1.0-rc01 và androidx.wear.compose:compose-navigation:1.1.0-rc01. Phiên bản 1.1.0-rc01 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi thêm các quy tắc cấu hình cơ sở cho
Placeholders,ScrollAway,RadioButton,Switch,Checkbox,OutlinedButtonOutlinedCompactButtonOutlinedChipvàOutlinedCompactChip. (I8249c) - Chúng tôi khắc phục lỗi trong
Modifier.scrollAwayđể nếuitemIndexđược chỉ định không hợp lệ (ví dụ: nếu giá trị chỉ mục nằm ngoài phạm vi), thìTimeTextsẽ vẫn hiển thị. (I2137a) - Chúng tôi cập nhật ảnh động
SwipeToDismissBoxđể phù hợp với cách triển khai nền tảng. Sau hoạt ảnh bóp vào hai cạnh ban đầu, màn hình sẽ trượt sang phải sau khi thao tác đóng được kích hoạt. (I41d34) - Để tối ưu hoá, chúng tôi cập nhật
Modifier.scrollAwayđể chỉ đọcscrollStatebên trong khối đo lường nhằm tránh hiện tượng tái kết hợp đối tượng sửa đổi sau mỗi lần đo lại. (I4c6f1) - Chúng tôi thêm tài liệu và mẫu vào phần giữ chỗ để hiển thị thứ tự chính xác của
Modifier.placeholdervàModifier.placeholderShimmerkhi áp dụng cho cùng một thành phần kết hợp. (Ie96f4, b/256583229) - Chúng tôi thay đổi chiều rộng đường viền mặc định của
OutlinedCompactChip/OutlinedChiptừ 2.dp thành 1.dp để phù hợp với các thông số kỹ thuật trong trải nghiệm người dùng cuối. (Ib3d8e) - Chúng tôi khắc phục lỗi trong
rememberPickerStatekhiến đầu vào mới cập nhật không được lưu, làm cho các thành phần kết hợp không được cập nhật sau khi thay đổi đầu vào. (I49ff6, b/255323197) - Chúng tôi triển khai một số cập nhật về giao diện người dùng cho phần giữ chỗ, 1) thay đổi hiệu ứng chuyển sáng lung linh (shimmer gradient) lên 1,5 lần kích thước màn hình, 2) bổ sung tính năng gia tốc (đường cong bézier) của tiến trình sáng lên và 3) tăng tốc độ của ảnh động wipe-off quét chuyển (250 mili giây). (Id29c1)
- Chúng tôi khắc phục lỗi giao diện người dùng xuất hiện do chưa xét tới vị trí các thành phần hiển thị trên màn hình, cụ thể: các khối và thẻ trong nền biến mất sớm hơn một chút trong lúc hiệu ứng xoá phần giữ chỗ diễn ra. (I2c7cb)
- Chúng tôi cập nhật bản vẽ nền của phần giữ chỗ để hợp nhất màu, thay vì xếp lớp như trước đây, như vậy sẽ giảm thiểu nguy cơ phối alpha của các lớp cắt khác nhau làm màu ở lớp dưới tràn qua các cạnh nền của phần giữ chỗ. (I2ea26)
- Chúng tôi sửa cách tính
ScalingLazyListState.centerItemIndex/centerItemOffsetđể mục gần với đường chính giữa khung nhìn nhất (bất kể nằm ở phía nào) luôn được coi làcenterItem. (I30709, b/254257769) - Chúng tôi sửa lỗi báo cáo độ lệch không chính xác trong quá trình khởi chạy
ScalingLazyColumntrongScalingLazyListState.layoutInfo.visibleItemsInfo. Hiện tại, một danh sách trống sẽ được trả về cho đến khi tất cả các mục trong danh sách hiện ra và có độ lệch chính xác. Kiểm traScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty()để xác nhận rằng quá trình khởi tạoScalingLazyColumnđã hoàn tất và các mục đều xuất hiện. (I3a3b8)
Phiên bản 1.1.0-beta01
Ngày 24 tháng 10 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.1.0-beta01, androidx.wear.compose:compose-material:1.1.0-beta01 và androidx.wear.compose:compose-navigation:1.1.0-beta01. Phiên bản 1.1.0-beta01 bao gồm các thay đổi sau.
Những điểm mới trong thư viện Compose dành cho Wear OS 1.1
Phiên bản 1.1.0-beta01 của Compose for Wear OS xác định 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á.
- Bản phát hành Wear Compose 1.1 có chức năng mới sau đây:
- Bộ chọn (Picker) – Cải tiến khả năng hỗ trợ tiếp cận đối với Bộ chọn để bạn có thể điều hướng các màn hình đa trình chọn bằng trình đọc màn hình và dễ dàng tiếp cận phần mô tả nội dung
- Tham số
contentDescriptioncủa Bộ chọn hiện chỉ được dùng cho tuỳ chọn Bộ chọn chỉ định và nhận một Chuỗi có tính chất rỗng (trước đây, bạn bắt buộc phải truyền thông tin ánh xạ từ tuỳ chọn đến phần mô tả nội dung dù chỉ được sử dụng tuỳ chọn đã chọn). - Các mục trong Bộ chọn hiện luôn được căn chỉnh giữa, khắc phục lỗi đặt
gradientRatiothành 0 có tác dụng phụ của việc thay đổi cách căn chỉnh. Chip/ToggleChip– Chúng tôi cập nhật cách chuyển màu mặc định choChip/ToggleChipđể phù hợp với thông số kỹ thuật mới nhất của trải nghiệm người dùng. Cập nhậtChipDefaults.gradientBackgroundChipColorsđể bắt đầu từ 50% màu gốc thay vì 32,5%.Chip/ToggleChip– Thêm các phương thức nạp chồng để sửa đổi hình dạng KhốiChip/Button/ToggleButton– Thêm kiểu đường viền mới cho khối, nút và các thành phần kết hợpOutlinedChipvàOutlinedButtonmới cung cấp mộtChip/Buttontrong suốt với đường viền mỏng.- Thẻ (Card) – Cập nhật cách chuyển màu mặc định cho các Thẻ để phù hợp với thông số kỹ thuật mới nhất của Trải nghiệm người dùng.
CardDefaults.cardBackgroundPainterđược cập nhật để bắt đầu từ 30% màu gốc và kết thúc ở 20%onSurfaceVariant(trước đây là từ 20% đến 10%onSurfaceVariant).ToggleChip.toggleChipColorsthay đổi độ chuyển màu tuyến tính như sau: trước đây là từ 75% bề mặt xuống 32,5% màu gốc, còn nay là từ 0% bề mặt đến 50% màu gốc. Button/ToggleButton– Thêm thuộc tính để sửa đổi hình dạng nút.- Giao diện (Theme) – Cập nhật một số màu mặc định trong
MaterialThemenhằm cải thiện khả năng tiếp cận vì độ tương phản của màu gốc không đủ, khiến người dùng khó phân biệt nền của khối/thẻ/nút với màu nền của giao diện. InlineSlider/Stepper– Thêm vai trò của nút đểTalkbackcó thể nhận ra các phần tử này dưới dạng nút.- Scaffold –
PositionIndicatornay được xác định vị trí và kích thước để chỉ chiếm đúng khoảng trống cần thiết. Thay đổi này hữu ích trong những trường hợp như khi bạn thêm thông tin ngữ nghĩa vào PositionIndicator, tính năng TalkBack sẽ nhận được ranh giới chính xác củaPositionIndicatortrên màn hình. CurvedText/TimeText– ThêmModifier.scrollAwayđể cuộn một mục theo chiều dọc trong/ngoài khung hiển thị dựa trên trạng thái cuộn (có thể nạp chồng để kết hợp vớiColumn,LazyColumnvàScalingLazyColumn).ScrollAwaythường dùng để cuộnTimeTextra khỏi khung hiển thị khi người dùng bắt đầu cuộn danh sách các mục lên trên.CurvedText/TimeText– Thêm tính năng hỗ trợ chofontFamily,fontStylevàfontSynthesistrongCurvedTextStyle, có thể sử dụng được trongcurvedTextvàbasicCurvedText.CurvedText/TimeText– ThêmfontWeightvào hàm khởi tạo và phương thức sao chép trongCurvedTextStyleToggleControls– Thêm các nút điều khiển bật/tắtCheckbox,SwitchvàRadioButtoncó hiệu ứng động để sử dụngToggleChipvàSplitToggleChip. Bạn có thể sử dụng các nút điều khiển này thay cho những biểu tượng tĩnh doToggleChipDefaults(switchIcon,checkboxIconvàradioIcon) cung cấp.- Phần giữ chỗ (placeholder) – Thêm tính năng hỗ trợ phần giữ chỗ thử nghiệm. Tính năng này có 3 hiệu ứng hình ảnh riêng biệt để kết hợp với nhau.
- Trước tiên, hiệu ứng bút vẽ nền cho phần giữ chỗ được dùng trong các vùng chứa như Khối và Thẻ để vẽ lên nền thông thường khi chờ nội dung tải.
- Thứ hai, đối tượng sửa đổi (
Modifier.placeholder()) vẽ một tiện ích phần giữ chỗ hình dạng sân vận động lên phía trên cùng của nội dung đang được tải. - Thứ ba, hiệu ứng độ dốc/ánh sáng (
Modifier.placeholderShimmer()) của đối tượng sửa đổi được vẽ lên đầu các hiệu ứng khác để cho người dùng biết chúng ta đang chờ tải dữ liệu.- Tất cả những hiệu ứng này được thiết kế để kết hợp với nhau, sáng lên rồi biến mất theo sự sắp đặt.
- Các phần phụ thuộc Core Compose được cập nhật từ 1.2 lên 1.3
Thay đổi về API
- Hiện tại, bạn có thể chỉ định trực tiếp các tham số phông chữ (
fontFamily,fontWeight,fontStylevàfontSynthesis) thành tham số củacurvedText(Idc422)
Sửa lỗi
- Hiện nay,
curveTextvàbasicCurvedTexthoạt động bình thường khi dùng với tính năng TalkBack (nút compose-ui có kích thước và thiết lập phù hợp (nhưng rỗng) được liên kết với những thành phần này bằng cách sử dụng văn bản để mô tả nội dung) (I7af7c, b/210721259) - Sửa lỗi
PickerkhiPickerState.repeatedItems = falseđể cài đặt chi tiết các tham số tự động căn giữa (autoCentering) vàoScalingLazyColumnnội bộ của Bộ chọn nhằm đảm bảo rằng bạn có thể cuộn từ tuỳ chọn 0 đến giữa khung hiển thị. (I8a4d7)
Phiên bản 1.1.0-alpha07
Ngày 5 tháng 10 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.1.0-alpha07, androidx.wear.compose:compose-material:1.1.0-alpha07 và androidx.wear.compose:compose-navigation:1.1.0-alpha07. Phiên bản 1.1.0-alpha07 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi thêm tính năng hỗ trợ phần giữ chỗ thử nghiệm. Tính năng này có 3 hiệu ứng hình ảnh riêng biệt để kết hợp với nhau. Trước tiên, hiệu ứng bút vẽ nền cho phần giữ chỗ được dùng trong các vùng chứa như Khối và Thẻ để vẽ lên nền thông thường khi chờ nội dung tải. Thứ hai, đối tượng sửa đổi (
Modifier.placeholder()) vẽ một tiện ích phần giữ chỗ hình dạng sân vận động lên phía trên cùng của nội dung đang được tải. Thứ ba, hiệu ứng độ dốc/ánh sáng (Modifier.placeholderShimmer()) của đối tượng sửa đổi được vẽ lên đầu các hiệu ứng khác để cho người dùng biết chúng ta đang chờ tải dữ liệu. Tất cả những hiệu ứng này được thiết kế để kết hợp với nhau, sáng lên rồi biến mất theo sự sắp đặt. (I3c339)
Các thay đổi về API
- Thêm tính năng hỗ trợ cho
fontWeight,fontFamily,fontStylevàfontSynthesistrongCurvedTextStyle, có thể sử dụng được trêncurvedTextvàbasicCurvedText. Bạn có thể dùng các tham số đó để chỉ định phông chữ và kiểu để sử dụng trên văn bản cong.(Iaa1a8),(I72759) - Cập nhật tham số chênh lệch của
Modifier.scrollAwaythành Dp để nhất quán vớiModifier.offset(trước đây tham số này tính bằng pixel). Ngoài ra, chúng tôi tái cấu trúc dưới dạngLayoutModifierđể tăng tính hiệu quả. (I9f94b) - Chúng tôi đổi tên
RadioButton’s circleColorthànhringColornhư là một phần của API điều khiển bật/tắt mới. (I28fa9) - Chúng tôi thêm các nút điều khiển bật/tắt
Checkbox,SwitchvàRadioButtoncó hiệu ứng động để sử dụng vớiToggleChipvàSplitToggleChip. Bạn có thể sử dụng các nút điều khiển này thay cho các biểu tượng tĩnh doToggleChipDefaults(switchIcon,checkboxIconvàradioIcon) cung cấp. (I8a8c4)
Phiên bản 1.1.0-alpha06
Ngày 21 tháng 9 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.1.0-alpha06, androidx.wear.compose:compose-material:1.1.0-alpha06 và androidx.wear.compose:compose-navigation:1.1.0-alpha06. Phiên bản 1.1.0-alpha06 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi thêm
Modifier.scrollAwayđể cuộn một mục theo chiều dọc trong/ngoài khung hiển thị, dựa trên trạng thái cuộn (có thể nạp chồng để hoạt động vớiColumn,LazyColumnvàScalingLazyColumn).ScrollAwaythường dùng để cuộnTimeTextra khỏi khung hiển thị khi người dùng bắt đầu cuộn danh sách các mục lên trên. (I61766)
Sửa lỗi
PositionIndicatornay được xác định vị trí và kích thước để chỉ chiếm đúng khoảng trống cần thiết. Thay đổi này hữu ích trong những trường hợp như khi bạn thêm thông tin ngữ nghĩa vào PositionIndicator, tính năng TalkBack sẽ nhận được ranh giới chính xác củaPositionIndicatortrên màn hình. (Ie6106, b/244409133)
Phiên bản 1.1.0-alpha05
Ngày 7 tháng 9 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.1.0-alpha05, androidx.wear.compose:compose-material:1.1.0-alpha05 và androidx.wear.compose:compose-navigation:1.1.0-alpha05. Phiên bản 1.1.0-alpha05 bao gồm các thay đổi sau.
Sửa lỗi
- Thêm vai trò của nút vào
InlineSlidervàStepperđể TalkBack có thể nhận ra những phần tử trên dưới dạng nút. (Icb46c, b/244260275) - Chúng tôi đã sửa thứ tự z của các chỉ báo vị trí và trang trong Scaffold. Các chỉ báo hiện sẽ nằm phía trên màn hình quảng cáo giữa các lần tải trang và vì vậy sẽ không bị làm mờ bởi quảng cáo giữa các lần tải trang. (Ib988f, b/244207528)
Phiên bản 1.1.0-alpha04
Ngày 24 tháng 8 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.1.0-alpha04, androidx.wear.compose:compose-material:1.1.0-alpha04 và androidx.wear.compose:compose-navigation:1.1.0-alpha04. Phiên bản 1.1.0-alpha04 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã cập nhật một số màu mặc định trong MaterialTheme nhằm cải thiện khả năng tiếp cận vì độ tương phản của màu gốc không đủ khiến người dùng khó phân biệt được nền của khối/thẻ/nút với màu nền của giao diện. Các màu được cập nhật bao gồm surface(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onSecondary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F8) và onError(0xFF202124->0xFF000000). Những thay đổi về màu sắc mặc dù tương đối khó phát hiện, nhưng cũng có thể ảnh hưởng đến các hoạt động kiểm thử hiện tại liên quan đến ảnh chụp màn hình. (81ab09)
Sửa lỗi
- Khắc phục lỗi logic trong
ScalingLazyColumncó thể dẫn đến việc danh sách có số lượng ít các mục trong danh sách (thường chính xác là 2) không hoàn tất quá trình khởi tạo và kết quả là không thấy màu nào. (504347)
Phiên bản 1.1.0-alpha03
Ngày 10 tháng 8 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.1.0-alpha03, androidx.wear.compose:compose-material:1.1.0-alpha03 và androidx.wear.compose:compose-navigation: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
- Chúng tôi đã thêm một kiểu đường viền mới cho
ChipsvàButtons, cũng như các thành phần kết hợpOutlinedChipvàOutlinedButtonmới cung cấp mộtChip/Buttontrong suốt với đường viền mỏng. (Id5972)
Thay đổi về API
- Đã thêm các phương thức nạp chồng để sửa đổi hình dạng nút (Icccde)
Sửa lỗi
- Chúng tôi sửa kích thước vùng điều khiển bật/tắt của
ToggleChip, vì kích thước này không khớp với thông số kỹ thuật của trải nghiệm người dùng. Thông số kỹ thuật của trải nghiệm người dùng yêu cầu khoảng cách giữa nhãn và vùng biểu tượng điều khiển bật/tắt là 4.dp kết hợp với vùng biểu tượng điều khiển bật/tắt 24x24.dp để có tổng chiều rộng là 28.dp. Tuy nhiên, vùng điều khiển bật/tắt 36x24.dp đã được triển khai không chính xác. Điều này dẫn đến việc lấy đi 8.dp của vùng nhãn văn bản có thể sử dụng. LƯU Ý: Bản sửa lỗi này tạo thêm không gian cho nhãn văn bản, và do đó có thể tác động (tích cực) đến bố cục văn bản đối với văn bản tràn màn hình. Nếu bạn thử nghiệm ảnh chụp màn hình có chứaToggleChips, thì bạn có thể cần phải cập nhật các thử nghiệm đó. (I514c8, b/240548670)
Phiên bản 1.1.0-alpha02
Ngày 27 tháng 7 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.1.0-alpha02, androidx.wear.compose:compose-material:1.1.0-alpha02 và androidx.wear.compose:compose-navigation: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
- Chúng tôi đã chuyển các phần phụ thuộc Compose cho Wear OS trên các thư viện Compose chính từ 1.2.0 sang 1.3.0-alpha0X
Thay đổi về API
- Thêm các phương thức nạp chồng để sửa đổi hình dạng chip (I02e87)
Sửa lỗi
- Chúng tôi tạo hiệu ứng động cho hiệu ứng mờ viền khi hiển thị/ẩn Hộp thoại để khớp với ảnh động chuyển tỷ lệ hiện tại. (Ida33e)
- Chúng tôi đã khắc phục lỗi một số khả năng chia cho 0 có thể xảy ra với hành vi hất khi cuộn. (I86cb6)
- Sửa lỗi trong
ChipDefaults.childChipColor()để đảm bảo màu nền bị tắt hoàn toàn trong suốt. (I2b3c3, b/238057342)
Phiên bản 1.1.0-alpha01
Ngày 29 tháng 6 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.1.0-alpha01, androidx.wear.compose:compose-material:1.1.0-alpha01 và androidx.wear.compose:compose-navigation:1.1.0-alpha01. Phiên bản 1.1.0-alpha01 bao gồm các thay đổi sau.
Các thay đổi về API
- Tham số
contentDescriptioncủa Bộ chọn hiện chỉ được dùng cho tuỳ chọn Bộ chọn chỉ định và nhận một Chuỗi có tính chất rỗng (trước đây, bạn bắt buộc phải truyền thông tin ánh xạ từ tuỳ chọn đến phần mô tả nội dung dù chỉ được sử dụng tuỳ chọn đã chọn). (Ife6a7) - Chúng tôi đã thực hiện các cải tiến về khả năng hỗ trợ tiếp cận đối với Bộ chọn, nhờ đó, bạn có thể điều hướng những màn hình có nhiều trình chọn để đọc bằng trình đọc màn hình và nội dung mô tả nội dung (I64edb)
Sửa lỗi
- Các quy tắc hồ sơ cơ sở đã được cập nhật đóng gói trong thư viện Wear Compose (I9c694)
- Chúng tôi đã sửa hướng chuyển màu cho Khối ở chế độ từ phải sang trái. Ở trên cùng bên trái->dưới cùng bên phải, nay là trên cùng bên phải->dưới cùng bên trái. (Ic2e77)
- Chúng tôi đã cập nhật độ dốc mặc định cho
Chip/ToggleChip/Cardđể phù hợp với thông số kỹ thuật mới nhất của trải nghiệm người dùng. Cập nhậtChipDefaults.gradientBackgroundChipColorsđể bắt đầu từ 50% bề mặt chính thay vì 32,5%.CardDefaults.cardBackgroundPainterđược cập nhật để bắt đầu ở 30% màu gốc và kết thúc ở 20%onSurfaceVariant(trước đây là từ 20% đến 10%onSurfaceVariant).ToggleChip.toggleChipColorsthay đổi độ chuyển màu tuyến tính như sau: trước đây là từ 75% bề mặt đến 32,5% màu gốc còn nay là từ 0% bề mặt đến 50% màu gốc. (I43bbd) - Chúng tôi thêm màu nền (
MaterialTheme.color.surface) vào sauChip/ToggleChipstrên nền chuyển màu để đảm bảo chúng hiển thị đúng cách trong trường hợp hiếm gặp là màu sáng được sử dụng ở lớp sau. (Ibe1a4, b/235937657) - Các mục trong Bộ chọn hiện luôn được căn chỉnh giữa, khắc phục lỗi đặt
gradientRatiothành không có tác dụng phụ của việc thay đổi cách căn chỉnh. (I712b8)
Phiên bản 1.0
Phiên bản 1.0.2
Ngày 7 tháng 9 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.2, androidx.wear.compose:compose-material:1.0.2 và androidx.wear.compose:compose-navigation:1.0.2. Phiên bản 1.0.2 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã sửa thứ tự z của các chỉ báo vị trí và trang trong Scaffold. Các chỉ báo hiện sẽ nằm phía trên màn hình quảng cáo giữa các lần tải trang và vì vậy sẽ không bị làm mờ bởi quảng cáo giữa các lần tải trang. (Ib988f, b/244207528)
Phiên bản 1.0.1
Ngày 24 tháng 8 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.1, androidx.wear.compose:compose-material:1.0.1 và androidx.wear.compose:compose-navigation:1.0.1. Phiên bản 1.0.1 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục lỗi logic trong
ScalingLazyColumncó thể dẫn đến việc danh sách có số lượng ít các mục trong danh sách (thường chính xác là 2) không hoàn tất quá trình khởi tạo và kết quả là không thấy màu nào. (076c61)
Phiên bản 1.0.0
Ngày 27 tháng 7 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0, androidx.wear.compose:compose-material:1.0.0 và androidx.wear.compose:compose-navigation: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
- Đây là bản phát hành chính thức đầu tiên của ứng dụng Compose cho Wear OS (đọc thêm).
- Compose cho Wear OS được xây dựng dựa trên thư viện Compose chính, cung cấp thêm các thành phần dành riêng cho thiết bị đeo, đồng thời các phương pháp triển khai thay thế cho thành phần Compose chính sẽ được điều chỉnh sao cho phù hợp với thiết bị đeo (khi thích hợp).
- Để biết danh sách các thành phần chính trong Wear Compose, vui lòng xem ghi chú phát hành của (Compose cho Wear OS Beta01).
Sửa lỗi
- Chúng tôi tạo hiệu ứng động cho hiệu ứng mờ viền khi hiển thị/ẩn Hộp thoại để khớp với ảnh động chuyển tỷ lệ hiện tại. (Ida33e)
- Chúng tôi đã khắc phục lỗi một số khả năng chia cho 0 có thể xảy ra với hành vi hất khi cuộn. (I86cb6)
- Sửa lỗi trong
ChipDefaults.childChipColor()để đảm bảo màu nền bị tắt hoàn toàn trong suốt. (I2b3c3, b/238057342)
Phiên bản 1.0.0-rc02
Ngày 22 tháng 6 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-rc02, androidx.wear.compose:compose-material:1.0.0-rc02 và androidx.wear.compose:compose-navigation:1.0.0-rc02. Phiên bản 1.0.0-rc02 bao gồm các thay đổi sau.
Sửa lỗi
- Chúng tôi đã sửa hướng của độ dốc cho Thẻ ở chế độ phải sang trái (RTL). Trước đây là trên cùng bên trái -> dưới cùng bên phải, còn hiện nay là trên cùng bên phải –> dưới cùng bên trái. (Ic2e77)
- Chúng tôi đã cập nhật độ dốc mặc định cho
Chip/ToggleChip/Cardđể phù hợp với thông số kỹ thuật mới nhất của trải nghiệm người dùng. Cập nhậtChipDefaults.gradientBackgroundChipColorsđể bắt đầu từ 50% bề mặt chính thay vì 32,5%.CardDefaults.cardBackgroundPainterđã được cập nhật để bắt đầu từ 30% chính và kết thúc ở 20%onSurfaceVariant(trước đây là 20% đến 10% của onSurfaceVariant).ToggleChip.toggleChipColorsthay đổi từ độ dốc tuyến tính của 75% bề mặt thành 32,5% bề mặt chính đến 0% bề mặt thành 50% bề mặt chính. (I43bbd) - Chúng tôi thêm màu nền (
MaterialTheme.color.surface) vào sauChip/ToggleChipstrên nền chuyển màu để đảm bảo chúng hiển thị đúng cách trong trường hợp hiếm gặp là màu sáng được sử dụng ở lớp sau. (Ibe1a4, b/235937657) - Các quy tắc hồ sơ cơ sở đã được cập nhật đóng gói trong thư viện Wear Compose (I9c694)
Phiên bản 1.0.0-rc01
Ngày 15 tháng 6 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-rc01, androidx.wear.compose:compose-material:1.0.0-rc01 và androidx.wear.compose:compose-navigation:1.0.0-rc01. Phiên bản 1.0.0-rc01 bao gồm các thay đổi sau.
Thay đổi về API
- Các giao diện trong thư viện Compose hiện được xây dựng bằng phương thức giao diện mặc định jdk8 (I5bcf1)
Sửa lỗi
- Chúng tôi đã xoá lệnh gọi rõ ràng cho
fillMaxWidth()trên tiêu đề danh sách do không cần thiết và có thể gây ra sự cố nếuScalinglazyColumncó tổ hợp thành phầnListHeader()vàChip()vì chiều rộng sẽ có xu hướng mở rộng/thu nhỏ khi cuộn để xem các mụcListHeader. (I37144, b/235074035) - Chúng tôi đã khắc phục lỗi trong
ScalingLazyColumncó thể khiến các mục danh sách không được vẽ chính xác cho đến khi được cuộn nếu mục danh sách thứ 0 đủ lớn (bao gồm cả khoảng đệm) (Ic6159, b/234328517) - Chúng tôi đã thực hiện một điều chỉnh nhỏ trong phần giảm
ScalingLazyColumnkhi các mục đạt đến cạnh màn hình để phù hợp với thông tin cập nhật về thông số trải nghiệm người dùng. Giá trị cũCubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f)-> giá trị mớiCubicBezierEasing(0.3f, 0f, 0.7f, 1f). Để giữ lại hành vi cũ, bạn có thể ghi đèscalingParamscủaScalingLazyColumn(Ie375c) - Chúng tôi thêm khoảng đệm vào
CompactChipđể đảm bảo rằng kích thước nhấn đích tối thiểu của thiết bị là 48.dp để đáp ứng nguyên tắc về hỗ trợ tiếp cận của Material. Thao tác này có thể ảnh hưởng đến mọi bố cục mà bạn đang sử dụngCompactChipsvì các bố cục này sẽ chiếm thêm dung lượng. (I3d57c)
Phiên bản 1.0.0-beta03
Ngày 1 tháng 6 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-beta03, androidx.wear.compose:compose-material:1.0.0-beta03 và androidx.wear.compose:compose-navigation:1.0.0-beta03. Phiên bản 1.0.0-beta03 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi đã đặt
ScalingLazyColumnhoạt động trong Compose ở chế độ@Preview. (I3b3b6, b/232947354)
Thay đổi về API
- Chúng tôi đã thay đổi giá trị mặc định của thuộc tính
ScalingLazyColumn.horizontalAlignmenttừ Start sangCenterHorizontallyđể đảm bảo khi các mục trong danh sách không lấp đầy chiều rộng của cột, các mục này sẽ được căn chỉnh để có thể hiển thị tối đa. Để quay lại hành vi trước đó, hãy đặthorizontalAlignment = Alignment.Start.(I9ed4b)
Lỗi đã biết
- Chiều cao nhấn của CompactChip nhỏ hơn nguyên tắc hỗ trợ tiếp cận Material. Phần này sẽ được sửa trong bản phát hành tiếp theo (ngày 15 tháng 6). Nếu bạn đang sử dụng CompactChip thì việc này sẽ ảnh hưởng đến bố cục của bạn do CompactChips giờ sẽ có thêm khoảng đệm ở trên và dưới. Vui lòng điều chỉnh và thử nghiệm bố cục của bạn hoặc xem các nhận xét lỗi để biết giải pháp sử dụng hành vi hiện có. (b/234332135)
Sửa lỗi
- Bản minh hoạ mới để tạo ảnh động thêm hoặc xoá văn bản bắt đầu trên
TimeText. (I16d75) - Thêm thử nghiệm cho
HorizontalPageIndicator.PagesState(I64ed0) - Cập nhật
TimeTextgần hơn với thông số kỹ thuật của trải nghiệm người dùng (Ib7ea1)
Phiên bản 1.0.0-beta02
Ngày 18 tháng 5 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-beta02, androidx.wear.compose:compose-material:1.0.0-beta02 và androidx.wear.compose:compose-navigation:1.0.0-beta02. Phiên bản 1.1.0-beta02 bao gồm các thay đổi sau.
Tính năng mới
- Giờ đây, bộ chọn luôn phản hồi các sự kiện cuộn ngay cả khi ở chế độ chỉ có thể đọc. Điều này giúp người dùng không cần phải nhấn để chọn Bộ chọn trước khi họ có thể cuộn. Ở chế độ chỉ có thể đọc, các tuỳ chọn khác với lựa chọn hiện tại sẽ bị che khuất trong phần đệm của
gradientColor. (I72925) - Chúng tôi đã thay đổi hành vi trải nghiệm người dùng của
Chip/ToggleChip/CompactChip/SplitToggleChipđể ngăn họ thực hiệnfillMaxWidththeo mặc định. Thay vào đó, chúng sẽ phát triển để phù hợp với nội dung. Để giữ hành vi trước đó, bạn chỉ cần thêmmodifier = Modifier.fillMaxWidth()(I60a2c, b/232206371)
Sửa lỗi
- Hàm khởi tạo
CurvedTextStylenhậnTextStylenay cũng tuân theofontWeight(Phương thức này có thể được thêm vào hàm khởi tạo và các phương thức sao chép trong những bản sửa đổi sau này của API) (Ieebb9) - Cải tiến trong thao tác vuốt từ cạnh. Khi bạn sử dụng
Modifier.edgeSwipeToDismissvà thực hiện thao tác vuốt sang trái từ khu vực cạnh, hoạt động này sẽ không còn kích hoạt thao tác vuốt để đóng khi hướng vuốt thay đổi sang phải. Trước đây, bạn có thể kích hoạt thao tác vuốt để đóng bằng cách vuốt sang trái rồi vuốt sang phải.(I916ea) - Hiện tại,
HorizontalPageIndicatorhiển thị tối đa 6 trang trên màn hình. Nếu có tất cả hơn 6 trang, thì trang này sẽ hiển thị chỉ báo có kích thước bằng một nửa ở phía bên trái hoặc bên phải, trong khi quá trình chuyển đổi giữa các trang diễn ra suôn sẻ.(I2ac29) - Cải tiến hành vi chụp nhanh mặc định trên
ScalingLazyColumnvàPicker(I49539) - Cải tiến trong thao tác vuốt từ cạnh. Khi
Modifier.edgeSwipeToDismissđược sử dụng, tính năng vuốt để đóng chỉ kích hoạt trong lần nhấn đầu tiên vào cạnh rồi vuốt sang phải. Trước đây, bạn có thể kích hoạt thao tác vuốt để đóng bằng cách vuốt từ bất kỳ phần nào của màn hình nếu cuộn đến điểm đầu.(I8ca2a)
Phiên bản 1.0.0-beta01
Ngày 11 tháng 5 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-beta01, androidx.wear.compose:compose-material:1.0.0-beta01 và androidx.wear.compose:compose-navigation:1.0.0-beta01. Phiên bản 1.0.0-beta01 bao gồm các thay đổi sau.
Có gì trong tính năng Soạn thư dành cho Wear OS 1.0
1.0.0-beta01 của Compose cho Wear OS đánh dấu một mốc quan trọng khi thư viện đã hoàn thiện về tính năng và API được khoá.
Các thành phần Wear Compose Material trong bản phát hành 1.0 bao gồm:
- Giao diện Material – được dùng để thay thế tính năng Soạn thư dành cho thiết bị di động
MaterialTheme, cung cấp màu sắc, hình dạng và kiểu chữ để xây dựng thành phần trên Thiết bị đeo thực hiện các nguyên tắc trải nghiệm người dùng Wear Material Design ngay từ đầu. Button,CompactButtonvàToggleButton– Nút cung cấp một khe duy nhất để chụp biểu tượng, hình ảnh hoặc văn bản ngắn (tối đa 3 ký tự). Hình tròn có kích thước đề xuất cho các nút mặc định, lớn hoặc nhỏ.CompactButtoncung cấp một khe duy nhất có hình tròn với kích thước nền rất nhỏ để chụp bất kỳ nội dung nào (biểu tượng, hình ảnh hoặc văn bản).CompactButtoncó khoảng đệm trong suốt (không bắt buộc) xung quanh nền để tăng diện tích khu vực có thể nhấp.ToggleButtonlà một nút cung cấp khe duy nhất để chụp mọi nội dung (văn bản ngắn, biểu tượng hoặc hình ảnh) và có các trạng thái bật/tắt (đã đánh dấu/bỏ đánh dấu) bằng màu và các biểu tượng khác nhau để cho biết liệu đã đánh dấu hay chưa- Thẻ – dùng để hiển thị thông tin về các ứng dụng, chẳng hạn như thông báo. Thiết kế linh hoạt cho nhiều trường hợp sử dụng, trong đó
AppCardvàTitleCardcung cấp bố cục và khả năng hỗ trợ hình ảnh khác nhau dưới dạng nội dung thẻ hoặc nền. - Chip – các thành phần có hình dạng sân vận động tương tự như các nút, nhưng có khu vực lớn hơn và nhiều khe để cho phép nhãn, nhãn phụ và biểu tượng. Có nhiều kích thước khác nhau và hỗ trợ hình ảnh làm nền.
- ToggleChips và SplitToggleChips – Một khối có trạng thái đã chọn/chưa đánh dấu và thêm một khe
ToggleControlđể hiển thị một biểu tượng như công tắc hoặc nút chọn để hiển thị trạng thái của thành phần. Ngoài ra,SplitToggleChipcòn có hai vùng có thể nhấn vào, một vùng có thể nhấp vào và một vùng có thể chuyển đổi. - CircularProgressIndicator – Chỉ báo tiến trình Wear Material với 2 biến thể. Biến thể đầu tiên thể hiện tỷ lệ hoàn thành một nhiệm vụ đang diễn ra đồng thời hỗ trợ khoảng trống trong đường tròn giữa các góc bắt đầu và kết thúc. Biến thể thứ hai cho biết tiến trình không xác định trong thời gian chờ không xác định.
- curvedText – tạo thành một phần của DSL để mô tả
CurvedLayouts, cùng vớicurvedRowvàcurvedColumn, để bố trí các thành phần xung quanh thiết bị hình tròn. Xem Nền tảng thành phần Wear bên dưới để biết thêm thông tin chi tiết vềCurvedLayoutvàCurvedModifier(mục này đóng vai trò tương tự như Đối tượng sửa đổi ở thế giới không cong và cho phép định cấu hình các khía cạnh khác nhau của bố cục, khoảng đệm, độ dốc, v.v.). - Hộp thoại, Cảnh báo và Xác nhận – Hộp thoại hiển thị hộp thoại toàn màn hình, nằm trên bất kỳ nội dung nào khác và hỗ trợ vuốt để đóng. Đó là khe duy nhất dự kiến làm nội dung hộp thoại Wear Material, chẳng hạn như Cảnh báo hoặc Xác nhận. Cảnh báo là nội dung hộp thoại được cho phép với các vị trí cho biểu tượng, tiêu đề và thông báo. Vị trí này có nội dung nạp chồng cho cả nút âm và dương được hiển thị cạnh nhau hoặc một khe cho một hoặc nhiều khối xếp chồng lên nhau theo chiều dọc. Xác nhận là nội dung hộp thoại được cho phép hiển thị thông báo trong một khoảng thời gian nhất định. Tệp này có khung giờ cho một biểu tượng hoặc hình ảnh (có thể là ảnh động).
- HorizontalPageIndicator – hiển thị vị trí trang nằm ngang theo cách phù hợp với kiểu dáng thiết bị đeo. Được thiết kế để chụp toàn màn hình và hiển thị chỉ báo cong trên các thiết bị hình tròn. Có thể dùng với trình xem trang Accompanist.
- Biểu tượng (Icon) – Cách triển khai biểu tượng Wear cho phép sử dụng màu và alpha trong Giao diện Material. Để biết biểu tượng có thể nhấp, hãy xem Nút hoặc Chip.
- Bộ chọn – hiển thị một danh sách các mục có thể cuộn để chọn. Theo mặc định, các mục sẽ được lặp lại "vô hạn" ở cả hai hướng. Có thể hiển thị ở chế độ chỉ đọc để ẩn các tuỳ chọn bị bỏ chọn.
- PositionIndicator – hiển thị vị trí cuộn hoặc chỉ báo vị trí khác theo cách phù hợp với kiểu dáng Thiết bị đeo. Được thiết kế để chụp toàn màn hình và hiển thị chỉ báo cong trên thiết bị tròn.
- Scaffold – triển khai cấu trúc bố cục hình ảnh cơ bản cho Material Design trên Wear. Thành phần này cung cấp một API để tập hợp nhiều thành phần Wear Material (chẳng hạn như
TimeText,PositionIndicatorvàVignette) nhằm xây dựng màn hình, đảm bảo chiến lược bố cục phù hợp với các thành phần đó và thu thập dữ liệu cần thiết để các thành phần này phối hợp hoạt động đúng cách. - ScalingLazyColumn – thành phần danh sách điều chỉnh theo tỷ lệ/chế độ xem hình mắt cá tạo thành một phần quan trọng trong ngôn ngữ Wear Material Design. Cung cấp hiệu ứng điều chỉnh theo tỷ lệ và trong suốt cho các mục nội dung.
ScalingLazyColumnđược thiết kế để có thể xử lý số lượng lớn các mục nội dung, chỉ chứa nội dung cụ thể và soạn nội dung khi cần. - Slider – cho phép người dùng lựa chọn trong một phạm vi các giá trị. Phạm vi các lựa chọn được hiển thị dưới dạng thanh, có thể tuỳ ý hiển thị cùng với dấu phân tách.
- Stepper – thành phần toàn màn hình cho phép người dùng lựa chọn từ một loạt các giá trị, sử dụng các nút tăng/giảm ở đầu và cuối màn hình, với một khe ở giữa Văn bản hoặc Khối.
- SwipeToDismissBox – sử dụng cử chỉ vuốt để đóng. Đó là một khe duy nhất cho nội dung nền (chỉ hiển thị trong cử chỉ vuốt) và nền trước. Bạn có thể kết hợp với thư viện điều hướng androidx bằng cách sử dụng
SwipeDismissableNavHost(xem thư viện Wear Compose Navigation bên dưới), nếu muốn. - Văn bản (Text) – Triển khai Wear cho thành phần Compose Material Text, lấy màu và alpha từ Giao diện Wear Material
- TimeText – một thành phần hiển thị Thời gian và trạng thái ứng dụng ở đầu màn hình. Điều chỉnh giao diện màn hình bằng cách dùng văn bản cong trên màn hình tròn.
Vignette – xử lý màn hình để sử dụng trong Scaffold làm mờ phần trên cùng và dưới cùng của màn hình khi đang sử dụng nội dung cuộn.
Các thành phần sau đây cũng có trong Wear Compose Foundation:
CurvedLayout – Wear Foundation
CurvedLayoutlà một bố cục có thể sắp xếp các vị trí con theo vòng cung, xoay vòng khi cần thiết. Điều này tương tự như bố cục Hàng được uốn cong thành một mảnh của vành hình khuyên. Lưu ý nội dung củaCurvedLayoutkhông phải là một hàm lambda kết hợp mà là một DSL (ngôn ngữ đặc thù cho miền). Tất cả các phần tử trong DSL của CurvedLayout đều hỗ trợ tham số đối tượng sửa đổi không bắt buộc, được tạo từCurvedModifier.basicCurvedText – một phần tử trong
CurvedLayoutDSL,basicCurvedTextcho phép các nhà phát triển dễ dàng viết văn bản cong theo đường cong của hình tròn (thường là ở cạnh của màn hình tròn). Bạn chỉ có thể tạobasicCurvedTexttrongCurvedLayoutđể đảm bảo trải nghiệm tốt nhất, chẳng hạn như khả năng chỉ định vị trí và sử dụngCurvedModifiers. Lưu ý trong hầu hết các trường hợp, bạn nên dùng curvedText, vì nó sử dụng giao diện Material.curvedComposable – gói nội dung kết hợp chuẩn hoá để bạn có thể sử dụng với
CurvedLayout. NếucurvedComposablecó một số phần tử bên trong, các phần tử này sẽ được vẽ chồng lên nhau (như Hộp). Để đặt nhiều thành phần kết hợp dọc theo một đường cong, hãy gói từng thành phần lại vớicurvedComposable.curvedRow and curvedColumn – tương tự như Hàng và Cột,
curvedRowvàcurvedColumncó thể được lồng vào bên trongCurvedLayoutđể bố trí các phần tử khi cần. Đối vớicurvedRow, bạn có thể chỉ định hướng bố cục góc và căn chỉnh tròn. Đối vớicurvedColumn, bạn có thể chỉ định hướng căn chỉnh góc và hướng tròn.CurvedModifier – tất cả các thành phần cong đều chấp nhận một tham số đối tượng sửa đổi có thể được tạo bằng cách sử dụng
CurvedModifier: nền, kích thước, trọng lượng và khoảng đệm được hỗ trợ.Thành phần sau cũng có trong Wear Compose Navigation:
SwipeDismissableNavHost – cung cấp một vị trí trong hệ thống phân cấp Compose để điều hướng độc lập xảy ra, với điều hướng ngược do cử chỉ vuốt cung cấp. Nội dung hiển thị trong
SwipeToDismissBoxcho biết cấp độ điều hướng hiện tại. Trong cử chỉ vuốt để đóng, mức điều hướng trước đó (nếu có) sẽ hiển thị trong nền.Xem ghi chú phát hành trước đây của các bản phát hành Alpha khác nhau để biết thêm thông tin về nội dung đã phân phối.
Thay đổi về API
- Đã thêm hàm
CurvedModifier.padding*. Chúng dùng để chỉ định không gian bổ sung được thêm xung quanh một thành phần cong. (I4dbb4) - Xoá lớp nội bộ
CompositionLocal(I42490) - Chúng tôi đã thêm các giá trị không đổi cho kích thước biểu tượng
Button,CompactButtonvàToggleButtonđể làm hướng dẫn (I57cab) - Thêm tham số đã bật vào
AppCardvàTitleCard. Giờ đây, chúng sẽ có API tương tự như Thẻandroidx.compose.material. Khi tham số được đặt thành false, bạn sẽ không thể nhấp vào thẻ được. (Idc48d, b/228869805)
Sửa lỗi
- Trình chuyển đổi hiện sẽ tắt các nút giảm và tăng khi đạt đến giới hạn dưới/giới hạn trên (và áp dụng ContentAlpha.disabled cho iconColor) (I4be9f)
- Chúng tôi đã thêm khoảng đệm 1 dp xung quanh nội dung Bộ chọn (Picker) khi vẽ một độ dốc để tránh văn bản bị chập chờn khi vuốt. (I0b7b9)
- Thêm thử nghiệm ảnh chụp màn hình cho
PositionIndicator(I5e8bc) - Thêm các thử nghiệm khác cho
AppCardvàTitleCard(I85391, b/228869805)
Phiên bản 1.0.0-alpha21
Ngày 20 tháng 4 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha21, androidx.wear.compose:compose-material:1.0.0-alpha21 và androidx.wear.compose:compose-navigation:1.0.0-alpha21. Phiên bản 1.0.0-alpha21 bao gồm những thay đổi sau.
Tính năng mới
- Đã thêm đối tượng sửa đổi đường cong mới để chỉ định nền của một phần tử cong:
CurvedModifier.background,.radialGradientBackgroundvà.angularGradientBackground(I8f392) - Cho phép chỉ định chế độ tràn văn bản cong (clip/ellipsis/visibility). (I8e7aa)
- Đã thêm đối tượng sửa đổi
CurvedModifier.weight, tương tự như đối tượng sửa đổi trong Compose. Chế độ này có thể được sử dụng trên các curvedRow và CurvedLayout con (đối với chiều rộng) và con của curvedColumn (đối với chiều cao). (I8abbd) - Đã thêm đối tượng sửa đổi
CurvedModifier.size,.angularSizevà.radialSizeđể chỉ định kích thước của một phần tử cong. (I623c7)
Thay đổi về API
- Sắp xếp lại các tham số một cách nhất quán để đảm bảo nền ưu tiên trước màu trên API Wear Compose (I43208)
- Đã xoá các tham số
insideOuttheo chiều kim đồng hồ và được thay thế bằng hằng số có ý nghĩa hơn trên các lớp mới. Giờ đây, hướng bố cục cong có thể nhận raLayoutDirectionvà được kế thừa khi không được chỉ định (If0e6a) - Chúng tôi đã thay thế
autoCenter: BooleanbằngautoCenter: AutoCentringParamsđể khắc phục vấn đề về API vớiScalingLazyColumn. (Ia9c90) - Chúng tôi đã đổi tên
iconTintColorvàtoggleControlTintColorthànhiconColorvàtoggleControlColortrên toàn bộ API (Chip/ToggleChip/Dialog/Slider/Stepper/...) khi màu được áp dụng cho vị trí icon/toggleControl. (Ied238) - Viết lại enum
PageIndicatorStylevào lớp giá trị (I2dc72) - Chúng tôi đã thêm
RowScope/ColumnScope/BoxScopevào một số vị trí trong Thành phần kết hợp để nhà phát triển nắm bố cục giả định. Điều này cho phép nhà phát triển sử dụng đối tượng sửa đổi bổ sung trên một số vị trí nội dung và tránh phải cung cấp thêm thành phần bố cục. Ngoài ra, chúng tôi cũng đã thực hiện một số thay đổi nhỏ đối với màu của AppCard/TitleCard đểtimeColorvàappColorđược đặt thànhcontentColortheo mặc định. Tất cả các thuộc tính này vẫn có thể được ghi đè riêng khi cần. (I26b59) - Đặt đối tượng
SwipeToDismissBoxState.Companionở chế độ riêng tư (I39e84) - Sửa thứ tự tham số cho
InlineSlidervàStepper. Một thay đổi đơn giản để tuân theo nguyên tắc của api (I11fec) - Chúng tôi đã xoá đối tượng Trình tiết kiệm này cho
SwipeToDismissBoxStatevì đối tượng này không được sử dụng. (Ifb54e) - Chúng tôi đã cập nhật
CompactChipđể đưa thuộc tính này vào Quy cách trải nghiệm người dùng mới nhất. Khoảng đệm đã được giảm xuống mức ngang = 12 dp và dọc = 0 dp. Phông chữ cho nhãn đã được thay đổi từ nút thành chú thích 1. Bạn nên dùng biểu tượng có kích thước 20x20 khi hiển thị cả biểu tượng lẫn nhãn và dùng kích thước 24x24 cho biểu tượng khối nhỏ gọn. Đối với trường hợp chỉ sử dụng biểu tượng, chúng tôi cũng đã đảm bảo biểu tượng đó được căn chỉnh ngay trung tâm. (Iea2be) - Chúng tôi đã thêm một số trường mới vào
ScalingLazyListLayoutInfođể cho phép nhà phát triển biết số lượngcontentPaddingvàautoCenteringPaddingđã được áp dụng. Các hàm này có thể hữu ích cho nhà phát triển khi tính toán fling/scroll (I7577b) - Chúng tôi đã triển khai quá trình chuyển đổi vào/ra cho Hộp thoại. Tham số
showDialogđã được thêm và Hộp thoại hiện kiểm soát chế độ hiển thị của riêng nó (điều này cho phép Hộp thoại chạy hoạt ảnh giới thiệu và kết thúc khi nó hiển thị/ẩn). Lưu ý hoạt ảnh cuối không được thực hiện khi người dùng rời khỏi hộp thoại thông qua thao tác vuốt để đóng. Chúng tôi cũng đã thêm giá trị mặc định cho trạng thái quá tảiSwipeToDismissBoxđược thêm vào gần đây. (I682a0) - Để hỗ trợ tốt hơn cho i18n và a11y, chúng tôi đã thay đổi
ToggleChipvàSplitToggleChipđể các giá trị này không còn mặc định cho vị trítoggleControl. Chúng tôi cũng đã thay đổiToggleChipDefaultsđể các phương thức sau đây giờ sẽ trả về ImageVector thay vì Biểu tượng (lưu ý vì chúng không còn trả về @Composables nên chúng sẽ thay đổi để bắt đầu bằng chữ thường),SwitchIcon()->switchIcon(),CheckboxIcon->checkboxIcon()vàRadioIcon()->radioIcon()– điều này cho phép và khuyến khích các nhà phát triển tạo thành phần kết hợpIcon()của riêng mình với một bộcontentDescriptionthích hợp. (I5bb5b) - Chúng tôi đã thêm tham số
SwipeDismissableNavHostStatevàoSwipeDismissableNavHost. Nó hỗ trợ việc sử dụng tính năng vuốt cạnh trên các màn hình dùng làm đích điều hướng, vìSwipeToDismissBoxStatehiện có thể được di chuyển và dùng để khởi chạy cảSwipeDismissableNavHostStatevàModifier.edgeSwipeToDismisstrên màn hình yêu cầu vuốt từ cạnh. (I819f5, b/228336555)
Sửa lỗi
- Đảm bảo bố cục cong được cập nhật khi cần. (Ie8bfa, b/229079150)
- Bản sửa lỗi cho https://issuetracker.google.com/issues/226648931 (Ia0a0a, b/226648931)
- Xoá chú thích thử nghiệm không cần thiết (I88d7e)
Phiên bản 1.0.0-alpha20
Ngày 6 tháng 4 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha20, androidx.wear.compose:compose-material:1.0.0-alpha20 và androidx.wear.compose:compose-navigation:1.0.0-alpha20. Phiên bản 1.0.0-alpha20 bao gồm những thay đổi sau.
Tính năng mới
- Thêm đối tượng sửa đổi
edgeSwipeToDismisschoSwipeToDismiss. Cho phépswipeToDismisschỉ hoạt động ở cạnh bên trái của khung nhìn. Được dùng khi trung tâm màn hình cần khả năng xử lý chế độ phân trang ngang, chẳng hạn như cuộn Bản đồ 2D hoặc vuốt theo chiều ngang giữa các trang. (I3fcec, b/200699800)
Thay đổi về API
- Cơ sở triển khai
CurvedModifiers, thao tác này triển khai cách giới thiệu các cách tuỳ chỉnh nội dung cong (nhưng chưa cóCurvedModifiersnào được cung cấp và khả năng tạo đối tượng sửa đổi tuỳ chỉnh có thể có sẵn sau đó) (I9b8df) EdgeSwipeTài liệu về đối tượng sửa đổi và các giá trị mặc định được cập nhật để bạn có thể hiểu rõ hơn. (I6d00d)- Thêm vị trí
PageIndicatorvào Scaffold. Bằng cách thêm trực tiếpPageIndicatorvào Scaffold, chúng tôi có thể đảm bảo tệp này sẽ hiển thị chính xác trên các thiết bị hình tròn. (Ia6042) - Xoá Biểu tượng mặc định khỏi
InlineSlidervà tham số Stepper. Điều này sẽ giúp nhà phát triển chú ý hơn đến các yêu cầu về bản địa hoá và hỗ trợ tiếp cận. Việc sử dụng các biểu tượng mặc định được trình bày trong bản minh hoạ và mẫu. (I7e6fd) - Thay thế tên tham số Replace Trailing và Leading bằng Start (Bắt đầu) và End (Kết thúc) trong TimeText (Iaac32)
- Chúng tôi đã thêm quá nhiều
SwipeToDismissBoxbằng tham sốonDismissedđể hỗ trợ việc sử dụng phổ biến khi kích hoạt một sự kiện điều hướng khi cử chỉ vuốt đã hoàn tất. (I50353, b/226565726) - Đã xoá chú thích
ExperimentalWearMaterialApikhỏi mức sử dụngTimeText(Ide520) - Chúng tôi đã đánh dấu phạm vi
ScalingLazyList/Columnvà giao diện thông tin kín vì chúng không dành cho các nhà phát triển bên ngoài triển khai, điều này cho phép chúng tôi thêm các thành viên mới trong tương lai mà không có các thay đổi có thể gây ra lỗi với tệp nhị phân. (I7d99f) - Chúng tôi đã thêm một thuộc tính
flingBehaviourmới vào Bộ chọn (Picker) và một phương thứcPickerDefaults.flingBehaviour()để kích hoạt cấu hình của hành vi hất, chẳng hạn như thêm hỗ trợ RSB.PickerStatehiện triển khai giao diệnScrollableState. (Ib89c7)
Sửa lỗi
- Cập nhật các quy tắc của hồ sơ cơ sở trên Android Runtime (ART) cho thư viện Wear Compose. ART có thể tận dụng các quy tắc cấu hình trên thiết bị để biên dịch trước một tập hợp con cụ thể của ứng dụng nhằm cải thiện hiệu suất ứng dụng. Lưu ý việc này sẽ không ảnh hưởng đến các ứng dụng có thể gỡ lỗi. (Iaa8ef)
- Cải thiện tài liệu (I2c051)
Phiên bản 1.0.0-alpha19
Ngày 23 tháng 3 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha19, androidx.wear.compose:compose-material:1.0.0-alpha19 và androidx.wear.compose:compose-navigation:1.0.0-alpha19. Phiên bản 1.0.0-alpha19 bao gồm những thay đổi sau.
Thay đổi về API
- Đã đổi tên
CurvedRowthànhCurvedLayoutvà được thiết kế lại cùng một phạm vi với DSL. Khi sử dụng DSL này, bạn có thể chỉ định bố cục cong phức tạp hơn bằng cách sử dụng một chuỗi lồng nhaucurvedRowvàcurvedColumn(là những bố cục cong tương đương với Hàng và Cột). Bên trong các phần tử của bố cục này, có thể sử dụng ba phần tử:curvedComposable(để thêm bất kỳ @Thành phần kết hợp nào),basicCurvedText(văn bản cong của nền tảng) vàcurvedText(văn bản cong nhận biết được tài liệu). (Ib776a) - Đặt cạnh bên cho cấu hình
PositionIndicator. Vị trí cơ bản của PositionIndicator hiện đã được định cấu hình để trở thành End (Kết thúc) (nhận biết hướng bố cục), OppositeRsb (bao gồm xoay màn hình, để đặt nó đối diện với RSB thực tế) hoặc mép Trái và mép Phải. (I2f1f3) - Đối với
SwipeToDismissBox, chúng tôi đã đổi tênSwipeDismissTarget.Original thànhSwipeToDismissValue.Default, cònSwipeDismissTarget.DismissalthànhSwipeToDismissValue.Dismissed. Chúng tôi cũng đã di chuyểnSwipeToDismissBoxDefaults.BackgroundKeyvàSwipeToDismissBoxDefaults.ContentKeysangSwipeToDismissKeys.Background,SwipeToDismissKeys.Contenttương ứng. (I47a36) - Chúng tôi đã thêm chế độ chỉ có thể đọc cho Bộ chọn (Picker), đối với các màn hình có nhiều Bộ chọn (Picker), trong đó chỉ có một Bộ chọn (Picker) có thể chỉnh sửa cùng một lúc. Khi Bộ chọn (Picker) ở chế độ chỉ được đọc, nó sẽ hiển thị tuỳ chọn hiện được chọn và một nhãn nếu bạn đã cung cấp tuỳ chọn. (I879de)
SwipeToDismissBoxStateđã được tái cấu trúc để giới hạn phạm vi từExperimentalWearMaterialApiđếnModifier.swipeablevàSwipeableState, hiện đang được sử dụng nội bộ.SwipeToDismissBoxStatehiện có các thành viêncurrentValue,targetValue,isAnimationRunningvàsnapTođể hỗ trợ các trường hợp sử dụng phổ biến. Vui lòng cho chúng tôi biết nếu bạn cần cung cấp thêm bất kỳ thuộc tính nào. Đồng thời đã khắc phục hành vi củaSwipeableStatetrong trường hợp độ lệch vuốt nằm trong lỗi làm tròn của liên kết. (I58302)
Sửa lỗi
- Đơn giản hoá và sửa lỗi mã để phát hiện xem có cuộn được nội dung
ScalingLazyColumnhay không (dùng để quyết định xem chúng ta có hiển thị thanh cuộn hay không) (I7bce0) - Đã khắc phục lỗi trên Chỉ báo vị trí khi được sử dụng với nhiều trạng thái và chuyển đổi giữa các trạng thái này (I320b5)
- Chúng tôi đã cập nhật kiểu chữ/phông chữ chủ đề cho tính năng Compose trong Wear OS mặc định để phù hợp với hướng dẫn mới nhất về trải nghiệm người dùng. Lưu ý: display1 (40.sp) và display2 (34.sp) hiện nhỏ hơn giá trị trước đó và nhiều cập nhật nhỏ khác về chiều cao dòng và khoảng cách dòng đã được thực hiện. (Ie3077)
- Chúng tôi đã thêm tính năng cản trở
SwipeToDismissBoxđể chuyển động đó chỉ diễn ra khi vuốt nhằm đóng và tuyệt đối không di chuyển theo hướng ngược lại. (Ifdfb9) - Chúng tôi đã thay đổi một số giá trị tham số mặc định cho các hàm
CircularProgressIndicatorđể phù hợp với hướng dẫn về trải nghiệm người dùng trên Wear Material Design. Đối với phiên bản Spinner/Indeininterminity, kích thước (40 -> 24.dp), indicatorColor (primary -> onBackground), độ trong suốt của trackColor (30% -> 10%) và chiều rộng nét (4 -> 3 dp) đã được cập nhật. Đối với phiên bản Progress/Determinate, độ trong suốt của trackColor (30%->10%) đã được cập nhật. (I659cc) - Chúng tôi đã cập nhật các tham số điều chỉnh theo tỷ lệ mặc định của
ScalingLazyColumncùng dòng với tham số kỹ thuật mới nhất của Wear Material Design. Rõ ràng điều này dẫn đến việc các trang thông tin bắt đầu được điều chỉnh gần hơn với vị trí trung tâm trang, nhưng lại bị giảm tỷ lệ ở cạnh trang so với trước đây. (Ica8f3) - Một số điều chỉnh đối với
ScalingLazyColumnDefaults.snapFlingBehaviorđể cải thiện điểm cuối của ảnh động (If3260)
Phiên bản 1.0.0-alpha18
Ngày 9 tháng 3 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha18, androidx.wear.compose:compose-material:1.0.0-alpha18 và androidx.wear.compose:compose-navigation:1.0.0-alpha18. Phiên bản 1.0.0-alpha18 bao gồm các thay đổi sau.
Thay đổi về API
- Một số điểm cải thiện cho PositionIndicator: ShowResult được đổi tên thành PositionIndicatorVisibility. Một số cải thiện về hiệu suất để tránh các phép tính toán lại khi không cần thiết (Iaed9d)
- Cập nhật màu sắc đề xuất cho
SplitToggleChip. SplitToggleChip's hiện có nền màu đồng nhất khi được đánh dấu hoặc bỏ đánh dấu với màu của ToggleControl là chỉ báo chính để cho biết thành phần đã được đánh dấu hay chưa. Chúng tôi đã thêm mộtToggleDefaults.splitToggleChipColors()mới để hỗ trợ bảng phối màu mới. Chúng tôi cũng đã đơn giản hoá các phương thứctoggleChipColors()để xoá splitBackgroundOverlayColor (I7e66e) - Chúng tôi đã thêm unadjustedSize vào
ScalingLazyListItemInfovì việc tính toán kích thước mục ban đầu bằng cách sử dụng kích thước điều chỉnh theo tỷ lệ và hệ số tỷ lệ sẽ không an toàn do độ chính xác về mặt toán học của số thực dấu phẩy động. (I54657, b/221079441) - Thêm
HorizontalPageIndicator. Mã này đại diện cho tổng số trang và một trang đã chọn. Có thể là đường thẳng hoặc đường cong, tuỳ thuộc vào hình dạng của thiết bị. Mã này cũng hỗ trợ hình dạng chỉ báo tuỳ chỉnh, giúp xác định cách trình bày trực quan từng chỉ báo. (Iac898) - Chúng tôi đã cập nhật
PickerStateđể có thể cập nhật numberOfOptions. Việc này hỗ trợ một số trường hợp sử dụng, chẳng hạn nhưDatePickerkhi số ngày trong tháng thay đổi theo tháng đã chọn. Thông số hàm khởi tạo cho PickerState đã thay đổi thành initialNumberOfOptions cho phù hợp. (Iad066) - Ẩn
PositionIndicatorkhi đó là thanh cuộn không thể cuộn. (Id0a7f) - Để đảm bảo tính nhất quán với Scaffold, thành phần Hộp thoại toàn màn hình của chúng tôi hiện hiển thị
PositionIndicatorvàVignette. Chúng tôi cũng đang sử dụngScalingLazyColumnthay vìColumn. Điều này có nghĩa là nội dung Hộp thoại hiện đã có trongScalingLazyListScope(và thường cần được nằm trong mục { /* content */ }). Hộp thoại hỗ trợ các thông số verticalArrangement tương ứng. (Idea13) - Chúng tôi đã đổi tên của thuộc tính toggleIcon
ToggleChipvàSplitToggleChipthành toggleControl để phù hợp hơn với Material Design nhằm giúp các nhà thiết kế và nhà phát triển dễ dàng điều hướng trong API. (If5921, b/220129803) - Chúng tôi đã thêm mục nhập mới caption3 vào Hệ thống các kiểu hình giao diện Material Wear. Caption3 là một phông chữ nhỏ được sử dụng cho cách viết dài hơn như văn bản pháp luật. (I74b13, b/220128356)
Sửa lỗi
- Dừng ảnh động chụp nhanh khi chúng tôi ở đó. (Idb69d)
- Hoạt ảnh hoá thay đổi trong PositionIndicator. (I94cb9)
- Dựa trên ý kiến phản hồi về giao diện người dùng/trải nghiệm người dùng, chúng tôi đã thay đổi tính năng autoCentering
ScalingLazyColumnđể cung cấp đủ không gian nhằm đảm bảo người dùng có thể cuộn hoàn toàn các mục có chỉ mụcScalingLazyListState.initialCenterItemIndextrở lên ở giữa khung nhìn. Tính năng này cho phép các nhà phát triển có thể đặt một hoặc hai mục về mục ban đầu ở vị trí trung tâm khiến người dùng không thể cuộn vào giữa. Điều này có nghĩa làScalingLazyColumncủa autoCenter'ing sẽ không thể cuộn trêninitialCenterItemIndex/initialCenterItemScrollOffset(I22ee2) - Chúng tôi đã thêm một bản minh hoạ cho Bộ chọn ngày và sửa lỗi trong
PickerStatemà tại đó, initiallySelectedOption không được áp dụng cho đến khi Bộ chọn được hiển thị. (Id0d7e) - Để giảm tình trạng cắt bớt các mục
ScalingLazyColumnrộng hơn trên màn hình tròn, chúng tôi đã tăng khoảng đệm nội dung mặc định theo chiều ngang từ 8 lên 10 dp. (I0d609) - Đảm bảo
PositionIndicatorđược hiển thị khi cuộn. (Ied9a2)
Phiên bản 1.0.0-alpha17
Ngày 23 tháng 2 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha17, androidx.wear.compose:compose-material:1.0.0-alpha17 và androidx.wear.compose:compose-navigation:1.0.0-alpha17. Phiên bản 1.0.0-alpha17 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi đã thêm tính năng hỗ trợ chụp nhanh mà bạn có thể sử dụng với
ScalingLazyColumn. ĐặtflingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state)để bật tính năng hỗ trợ chụp nhanh. (I068d3, b/217377069) - Chúng tôi đã thêm các bản minh hoạ cho Bộ chọn dùng để chọn thời gian theo định dạng 24 giờ hoặc 12 giờ. (Ie5552)
Thay đổi về API
- Khắc phục sự cố với phông chữ và kiểu
TimeTexttuỳ chỉnh trên thiết bị hình vuông (Iea76e) ScalingLazyListLayoutInfohiện córeverseLayout,viewportSizevà các thuộc tính hướng khớp với các thuộc tính đó từLazyListLayoutInfo(I4f258, b/217917020)- Giờ đây,
ScalingLazyColumncó một thuộc tínhuserScrollEnabledkhớp với thuộc tính đó từLazyList(I164d0, b/217912513) - Theo mặc định, bộ chọn hiện có độ dốc có màu biến đổi trên đầu và cuối (Iab92a)
Sửa lỗi
- Chúng tôi đã sửa đổi
ScalingLazyColumnđể mã này không còn lấp đầy toàn bộ không gian trong thành phần mẹ của mã. Thay vào đó, mã sẽ lấy kích thước từ kích thước các nội dung của mã. Điều này nhất quán với hoạt động củaLazyColumn. Nếu bạn muốn khôi phục hoạt động cũ, hãy chuyểnModifier.fillMaxWidth()/width()/widthIn()vàoScalingLazyColumn(I51bf8) - Chúng tôi đã cải thiện thông báo ngoại lệ trong
SwipeDismissableNavHost.ktđược kích hoạt nếu ngăn xếp lùi điều hướng trống. (I1b1dc)
Phiên bản 1.0.0-alpha16
Ngày 9 tháng 2 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha16, androidx.wear.compose:compose-material:1.0.0-alpha16 và androidx.wear.compose:compose-navigation:1.0.0-alpha16. Phiên bản 1.0.0-alpha16 bao gồm các thay đổi sau.
Tính năng mới
- Thêm
CircularProgressIndicator. Chỉ báo tiến trình hiển thị thời lượng của quy trình hoặc thời gian chờ không xác định. Hỗ trợ một khoảng trống (vết cắt) cho TimeText hoặc các thành phần khác nếu được sử dụng toàn màn hình. (Iab8da)
Thay đổi về API
- Bộ chọn hiện có tham số
flingBehavior. Giá trị mặc định làm cho các bộ chọn điều chỉnh theo tuỳ chọn gần nhất khi cuộn/hất. (I09000) - API số nguyên bổ sung cho InlineSlider và Stepper (I1b5d6)
Sửa lỗi
- Chúng tôi đã thay đổi initialCenterItemIndex mặc định cho
ScalingLazyListStatetừ 0->1. Điều này có nghĩa là trừ phi bị ghi đè trên cấu trúc trạng thái vớiScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =), mục danh sách thứ hai (chỉ mục == 1) sẽ được đặt ở giữa khung nhìn khi khởi động và mục đầu tiên (chỉ mục == 0) ) sẽ được đặt trước mục đó. Điều này cho phép hiệu ứng hình ảnh mặc định tốt hơn ngay lập tức vì hầu hết khung nhìn sẽ được lấp đầy với các mục danh sách. (I0c623, b/217344252) - Chúng tôi giảm giá trị mặc định
ScalingLazyColumnextraPaddingđược cung cấp để đảm bảo có nhiều mục trong danh sách để vẽ (ngay cả khi chúng tôi điều chỉnh tỷ lệ kích thước một số mục trong số đó) từ 10% xuống còn 5%. Điều này sẽ tránh việc soạn các mục danh sách bổ sung có thể không xuất hiện trong khung nhìn. Nếu đang sử dụng scalingParams không chuẩn (ví dụ: tăng tỷ lệ cực cao), nhà phát triển có thể điều chỉnh khoảng đệm bổ sung bằng cách sử dụngviewportVerticalOffsetResolver. (I76be4) - Khắc phục vấn đề TimeText trên nhiều dòng trên thiết bị hình vuông (Ibd3fb)
- Chúng tôi đã sửa đổi
ScalingLazyColumnđể mã này không còn lấp đầy toàn bộ không gian trong thành phần mẹ của mã. Thay vào đó, mã sẽ lấy kích thước từ kích thước các nội dung của mã. Điều này phù hợp với hoạt động củaLazyColumn. Nếu bạn muốn khôi phục hoạt động cũ, hãy chuyểnModifier.fillMaxSize()vàoScalingLazyColumn– LƯU Ý: Thay đổi này chưa hoàn chỉnh và sẽ được giải quyết trong thay đổi tiếp theo trong bản phát hành alpha tiếp theo. (I3cbfa)
Phiên bản 1.0.0-alpha15
Ngày 26 tháng 1 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha15, androidx.wear.compose:compose-material:1.0.0-alpha15 và androidx.wear.compose:compose-navigation:1.0.0-alpha15. Phiên bản 1.0.0-alpha15 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã thêm thuộc tính mới
autoCenteringvàoScalingLazyColumn. Khi là giá trị true (mặc định), thuộc tính này sẽ đảm bảo rằng người dùng có thể cuộn tất cả các mục, bao gồm cả mục đầu tiên và cuối cùng để các mục đó có thể hiển thị ở giữa khung nhìn danh sách. Lưu ý rằng nếu sử dụng tính năng tự động căn giữa, bạn có thể muốn đặt khoảng đệm nội dung dọc thành 0.dp. Nếu bạn cung cấp cả tính năng tự động căn giữa và khoảng đệm nội dung dọc, thì cả hai nội dung này đều sẽ có thêm dung lượng lưu trữ trước mục đầu tiên và sau mục cuối cùng trong danh sách, cho phép người dùng cuộn nhiều nội dung hơn nữa. (I2a282, b/214922490) - Chúng tôi đã thêm thành phần
Dialogcho phép bất kỳ thành phần kết hợp nào kích hoạt hộp thoại toàn màn hình nằm trên nội dung khác. Khi được hiển thị, hộp thoại hỗ trợ vuốt để đóng và hiển thị nội dung của thành phần mẹ ở chế độ nền trong khi thao tác cử chỉ vuốt. Nội dung hộp thoại dự kiến sẽ làAlerthoặcConfirmation(đã đổi tên từ các thành phần trước đóAlertDialogvàConfirmationDialog) –Alert,ConfirmationvàDialogđều nằm trong góiandroidx.wear.compose.material.dialog. Bạn có thể sử dụng Cảnh báo và Xác nhận làm đích đến điều hướng. Ngoài ra, chúng tôi đã thêm ColumnScope vào thông số Cảnh báo và Xác nhận nếu cần. (Ia9014) - Chúng tôi đã xoá
onSurfaceVariant2khỏi Compose cho Màu giao diện WearOS Material và thay thế các mục đích sử dụng trong thư viện bằngonSurfaceVariant. (Icd592) - Thêm một phương thức để chương trình chọn một tuỳ chọn trên
PickerState, giờ đây, bạn cũng có thể chỉ định tuỳ chọn đã chọn ban đầu khi tạoPickerState. (I92bdf) - Chúng tôi đã bổ sung tính năng hỗ trợ để tuỳ chỉnh hoạt động hất của
ScalingLazyColumn. (I1ad2e, b/208842968) - Chúng tôi đã thêm
NavController.currentBackStackEntryAsState()vào thư việnWear.Compose.Navigation. (If9028, b/212739653) - Thêm
Modifier.onRotaryScrollEvent()vàModifier.onPreRotaryScrollEvent()cho các thiết bị Wear có nút bên xoay. (I18bf5, b/210748686)
Phiên bản 1.0.0-alpha14
Ngày 12 tháng 1 năm 2022
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha14, androidx.wear.compose:compose-material:1.0.0-alpha14 và androidx.wear.compose:compose-navigation:1.0.0-alpha14. Phiên bản 1.0.0-alpha14 bao gồm các thay đổi sau.
Tính năng mới
Chúng tôi đã thêm một số phương thức vào
ScalingLazyListStateđể cho phép nhà phát triển kiểm soát việc cuộn tới các mục danh sách cụ thể cũng như đặt mục danh sách ban đầu và độ dời.Trong lần thay đổi này, chúng tôi cũng đã sửa đổi ScalingLazyList để danh sách này hướng quanh tâm khung nhìn của ScalingLazyList thay vì vị trí bắt đầu của khung nhìn.
Một thuộc tính mới
anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenterđã được thêm vàoScalingLazyListđể kiểm soát xem có phải căn giữa (ScalingLazyListAnchorType.ItemCenter) hoặcEdge(ScalingLazyListAnchorType.ItemStart) với đường tâm của khung nhìn hay không.Do đó,
ScalingLazyListItemInfo.offsetvàScalingLazyListItemInfo.adjustedOffsetđã thay đổi và hiện sẽ phản ánh độ bù trừ của mục đối với cả vị trí của mục danh sách vàanchorTypecủa danh sách. Ví dụ: đối vớiScalingLazyColumncóanchorTypecủaItemCentervà một mục danh sách được đặt ở vị trí chính giữa trên đường tâm của khung nhìn, độ bù trừ sẽ là0.Các phương thức mới là
scrollTo,animatedScrollTo,centerItemIndexvàcenterItemOffset. (I61b61)Chúng tôi đã thêm một trình xử lý nút quay lại vào
SwipeDismissableNavHostđể thao tác nhấn vào nút quay lại sẽ chuyển về cấp trước trong hệ thống phân cấp điều hướng. (I5b086, b/210205624)
Phiên bản 1.0.0-alpha13
Ngày 15 tháng 12 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha13, androidx.wear.compose:compose-material:1.0.0-alpha13 và androidx.wear.compose:compose-navigation:1.0.0-alpha13. Phiên bản 1.0.0-alpha13 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đã đặt
RangeIconstrong nội bộ (đượcInlineSlidervàSteppertham chiếu nội bộ). (I927ec)
Sửa lỗi
Khắc phục vấn đề trong đó
SwipeDismissableNavHostthêm một đích đến vào hệ phân cấp Compose trước khi đạt đến trạng thái Vòng đờiCREATED, dẫn đếnIllegalStateException. Việc sửa lỗi này là điều kiện tiên quyết để cập nhật phần phụ thuộc trênnavigation-composethành2.4.0-beta02và nhiều nơi khác. (I40a2b, b/207328687)Thêm lớp enum Đối tượng có thể vẽ để có các tài nguyên có thể vẽ trong thư viện Wear Compose để không cần truy vấn nữa. Điều này khắc phục lỗi đối tượng có thể vẽ của thư viện bị xoá khi
minifyEnabled=truehoặcshrinkResources=true).(Ib2a98)Thêm thử nghiệm cho
Steppertrong Wear Compose (I2d03a)Thêm mẫu cho
SwipeDismissableNavHosttrong Điều hướng Wear Compose. (I85f06)
Phiên bản 1.0.0-alpha12
Ngày 1 tháng 12 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha12, androidx.wear.compose:compose-material:1.0.0-alpha12 và androidx.wear.compose:compose-navigation:1.0.0-alpha12. Phiên bản 1.0.0-alpha12 bao gồm các thay đổi sau.
Tính năng mới
Chúng tôi đã thêm thành phần Stepper cho phép người dùng lựa chọn trong một phạm vi các giá trị. Stepper là một trình điều khiển toàn màn hình, có các nút tăng và giảm ở trên cùng và dưới cùng và một khe ở giữa (dự kiến sẽ nhận được một Khối hoặc Văn bản). Bạn có thể tuỳ chỉnh các biểu tượng nút nếu cần. (I625fe)
Chúng tôi bổ sung 2 thành phần kết hợp mới để hiển thị hộp thoại: AlertDialog chờ phản hồi của người dùng, đồng thời hiển thị tiêu đề, biểu tượng, thông báo và a) 2 nút cho các lựa chọn có/không đơn giản hoặc b) khối xếp chồng theo chiều dọc hoặc khối bật/tắt để có các lựa chọn linh hoạt hơn, ConfirmationDialog sẽ hiển thị xác nhận với một khoảng thời gian chờ. Hộp thoại đơn giản này có các ô cho tiêu đề và biểu tượng (ảnh động). (Ic2cf8)
Thay đổi về API
- Thêm đơn vị (mili giây) vào giá trị thời lượng hộp thoại đề xuất. (I09b48)
Phiên bản 1.0.0-alpha11
Ngày 17 tháng 11 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha11, androidx.wear.compose:compose-material:1.0.0-alpha11 và androidx.wear.compose:compose-navigation:1.0.0-alpha11. Phiên bản 1.0.0-alpha11 bao gồm các thay đổi sau.
Tính năng mới
- Chúng tôi đã thêm một thành phần bộ chọn cho phép người dùng chọn một mục trong danh sách cuộn. Theo mặc định, danh sách các mục có thể chọn được lặp lại "vô hạn" ở cả hai hướng, để mang lại ấn tượng về một hình trụ xoay từ mặt bên. Hai tính năng sẽ được thêm vào các bản phát hành sau này: chụp nhanh một giá trị sau khi vuốt/hất; thêm một hàm vào PickerState để đặt/cuộn với giá trị hiện tại. (I6461b)
Thay đổi về API
- Thêm ScalingLazyItemScope và một số đối tượng sửa đổi mới fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight để cho phép đổi kích thước các mục trong danh sách dựa trên kích thước của vùng chứa phần thành phần mẹ. Bạn có thể đặt các mục thành lấp đầy toàn bộ hoặc một phân đoạn kích thước thành phần mẹ. Thao tác này sẽ hiển thị chức năng đã có trong LazyRow/Column (I4612f)
- Thêm tuỳ chọn hỗ trợ cho ScalingLazyColumn để cho phép các mục có khoá. Đồng thời thêm các phương thức tiện lợi để cho phép thêm các mục từ Mảng và Danh sách. (Ic1f89)
Sửa lỗi
- Ví dụ khác về TimeText (I8cb64)
Phiên bản 1.0.0-alpha10
Ngày 3 tháng 11 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha10, androidx.wear.compose:compose-material:1.0.0-alpha10 và androidx.wear.compose:compose-navigation: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 một InlineSlider cho Wear Compose. InlineSlider cho phép người dùng lựa chọn trong một phạm vi các giá trị. Phạm vi các lựa chọn được thể hiện dưới dạng thanh, từ giá trị tối thiểu đến tối đa của phạm vi, từ đó người dùng có thể chọn một giá trị. (If0148)
Hãy xem Compose mới cho Lớp học lập trình WearOS!
Thay đổi về API
- Macrobenchmark hiện có
minSdkVersionlà23. (If2655)
Sửa lỗi
- Cập nhật cách xử lý quá trình chuyển đổi trong SwipeDismissableNavHost trong một SideEffect (I04994, b/202863359)
- Cập nhật cách xử lý quá trình chuyển đổi trong SwipeDismissableNavHost (I1cbe0, b/202863359)
Phiên bản 1.0.0-alpha09
Ngày 27 tháng 10 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha09, androidx.wear.compose:compose-material:1.0.0-alpha09 và androidx.wear.compose:compose-navigation: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 đã ra mắt bản dùng thử cho nhà phát triển với Compose trên Wear OS. Hãy xem bài đăng trên blog của chúng tôi để đánh giá các thành phần kết hợp chính và đường liên kết đến các tài nguyên khác để bắt đầu sử dụng.
Thay đổi về API
- Chúng tôi đã bổ sung tính năng hỗ trợ cho các nhà phát triển để họ có thể tuỳ chỉnh tất cả màu sắc trong giao diện màu sắc Wear Material Design. (I4759b, b/199754668)
Sửa lỗi
- Thêm các mẫu SwipeToDismissBox vẫn tồn tại ở trạng thái này (Ibaffe)
- Thêm đường liên kết đến hướng dẫn developer.android.com từ KDocs xho CurvedText, TimeText và SwipeToDismissBox. (I399d4)
- Giờ đây, SwipeDismissableNavHost sẽ gửi nếu không có đích đến hiện tại (cho biết rằng NavGraph chưa được xây dựng bằng hàm số hiệu dụng wear.compose.navigation.composable ) (I91403)
- Thêm tài liệu và ví dụ khác về cách sử dụng nguồn thời gian trong TimeText (I4f6f0)
Phiên bản 1.0.0-alpha08
Ngày 13 tháng 10 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha08, androidx.wear.compose:compose-material:1.0.0-alpha08 và androidx.wear.compose:compose-navigation:1.0.0-alpha08. Phiên bản 1.0.0-alpha08 bao gồm các thay đổi sau.
Thay đổi về API
- Chúng tôi đổi tên các thuộc tính
bodycủa AppCard và TitleCard thànhcontent, đồng thời di chuyển xuống cuối danh sách để bạn có thể cung cấp những thuộc tính này dưới dạng hàm lambda theo sau. Đồng thời, đổi tênbodyColorthànhcontentColorđể đảm bảo tính nhất quán với tên khe mới. (I57e78)
Sửa lỗi
- Thêm đường liên kết đến developer.android.com guides từ KDocs cho nút, thẻ, khối, giao diện, chỉ báo vị trí và các thành phần cột tải lười theo tỷ lệ. (I22428)
- Sửa lỗi WearOS SwipeToDismissBox đôi khi không xử lý các thao tác vuốt. (I9387e)
- Thêm mẫu cho Button, CompactButton, Chip, CompactChip, AppCard, TitleCard, ToggleButton, ToggleChip, SplitToggleChip (Iddc15)
- Thêm các thử nghiệm hiệu suất của microbenchmark trên Thẻ, Khối, ToggleChip, TimeText và ScalingLazyColumn. (If2fe9)
Phiên bản 1.0.0-alpha07
Ngày 29 tháng 9 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha07, androidx.wear.compose:compose-material:1.0.0-alpha07 và androidx.wear.compose:compose-navigation: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 thành phần CurvedText trong Material, một thành phần cho phép các nhà phát triển dễ dàng viết văn bản cong theo đường cong của một vòng tròn (thường ở cạnh màn hình tròn). (I19593)
Thay đổi về API
- Thêm thử nghiệm cho TimeText (Idfead)
- Chuyển đổi ArcPaddingValues thành một giao diện. (Iecd4c)
- Thêm ảnh động vào SwipeToDismissBox (I9ad1b)
- Thêm tham số hasBackground vào API SwipeToDismissBox để có thể tắt cử chỉ vuốt khi không có nội dung nền nào để hiển thị. (I313d8)
rememberNavController()nay bao gồm thêm một tập hợp thực thểNavigatortuỳ chọn sẽ được thêm vàoNavControllertrả về. Việc này nhằm hỗ trợ tốt hơn cho các Trình điều hướng tuỳ chọn, chẳng hạn như Trình điều hướng trong Tài liệu điều hướng đi kèm. (I4619e)- Tham chiếu NamedNavArgument từ navigation-common và xoá bản sao từ wear.compose.navigation. (I43af6)
Sửa lỗi
- Khắc phục quy trình thử nghiệm không chính xác CurvedRow trên các thiết bị nhỏ hơn. (If7941)
- Khắc phục sự cố nhấp nháy trên CurvedRow khi nội dung cập nhật và đảm bảo đo lường lại hàng cong (Ie4e06)
- ChipDefaults.gradientBackgroundChipColors() đã được cập nhật phù hợp với các thay đổi về Thông số kỹ thuật của trải nghiệm người dùng. Giờ đây, độ dốc bắt đầu bằng MaterialTheme.colors.primary với alpha 32,5% và kết thúc bằng MaterialTheme.colors.surface với alpha @ 0% trên nền Material Theme.colors.Surface @ 75% alpha. (Id1548)
- Chúng tôi đã cập nhật màu sắc cho ToggleChips khi ở trạng thái đã chọn cho phù hợp với hướng dẫn Thông số kỹ thuật trải nghiệm người dùng của Wear Material Design gần đây nhất. Sau khi chọn ToggleChips, bạn sẽ có đối tượng nút có màu biến đổi tuyến tính (gradient) từ MaterialTheme.color.surface @ 0% alpha, ở trên cùng bên trái, sang MaterialTheme.color.primary @ 32% alpha, ở dưới cùng bên phải, trên nền của MaterialTheme.color.surface @ 75% alpha. Điều này dẫn đến sự khác biệt nhỏ giữa trạng thái được đánh dấu và đã bỏ đánh dấu của ToggleChip. (Idd40b)
Phiên bản 1.0.0-alpha06
Ngày 15 tháng 9 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha06, androidx.wear.compose:compose-material:1.0.0-alpha06 và androidx.wear.compose:compose-navigation: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 Scaffold là một ứng dụng có thể tổng hợp cấp cao nhất có cấu trúc để xử lý vị trí PositionIndicators (như Cuộn hoặc Âm lượng), một vùng ở đầu màn hình để hiển thị thời gian và trạng thái của ứng dụng, đồng thời cũng hỗ trợ làm mờ nét ảnh để làm mờ màn hình trên cùng và cạnh dưới cho nội dung có thể cuộn. Vùng chính của Scaffold là nơi đặt nội dung ứng dụng. (I5e0bf)
- Thêm tuỳ chọn triển khai TimeText cho Wear Compose (I5654c)
Thư viện Điều hướng Wear Compose
Chúng tôi đã thêm bản phát hành đầu tiên của thư viện Điều hướng Wear Compose. Thư viện này giúp tích hợp giữa các thư viện Điều hướng Wear Compose và Androidx. Công cụ này cung cấp một phương thức đơn giản để điều hướng giữa các hàm có khả năng kết hợp làm các đích đến trong ứng dụng của bạn.
Bản phát hành đầu tiên này cung cấp:
- Một thành phần kết hợp
SwipeDismissableNavHostlưu trữ biểu đồ điều hướng và cung cấp thao tác điều hướng ngược qua cử chỉ vuốt - Tiện ích mở rộng
NavGraphBuilder.composablehỗ trợ tạo biểu đồ điều hướng rememberSwipeDismissableNavController()để cho phép đưa trạng thái lên trên
- Một thành phần kết hợp
Ví dụ về cách sử dụng khi chúng tôi tạo hai màn hình và điều hướng giữa các màn hình đó:
val navController = rememberSwipeDismissableNavController() SwipeDismissableNavHost( navController = navController, startDestination = "start" ) { composable("start") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Button(onClick = { navController.navigate("next") }) { Text("Go") } } } composable("next") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Text("Swipe to go back") } } }Điều hướng Wear Compose được gói dưới dạng một thư viện riêng biệt để các ứng dụng WearCompose đơn giản có thể triển khai chức năng điều hướng cuộn thủ công mà không cần phụ thuộc vào thư viện Điều hướng AndroidX.
Thay đổi về API
- Cập nhật
SwipeDismissableNavHostđể hỗ trợrememberSaveablebằng cách đặt thông tin nhận dạng chính cho nền và nội dung (I746fd) - Chúng tôi đã thêm một trình chuyển đổi PositionIndicator có thể xử lý LazyListState (I21b88)
- Cập nhật SwipeToDismissBox để hỗ trợ rememberSaveable (Ie728b)
- Chúng tôi đã thêm tính năng hỗ trợ reverseLayout vào ScalingLazyColumn. Điều này cho phép đảo ngược hướng cuộn và bố cục (I9e2fc)
- Ngừng sử dụng
performGesturevàGestureScope, thay thế bằngperformTouchInputvàTouchInjectionScope. (Ia5f3f, b/190493367) - Chúng tôi đã đổi tên VignetteValue thành VignettePosition và VignetteValue.Both thành VignettePosition.TopAndBottom. (I57ad7)
- Chúng tôi đã đổi tên ScalingLazyColumnState thành ScalingLazyListState, ScalingLazyColumnItemInfo thành ScalingLazyListItemInfo, ScalingLazyColumnLayoutInfo thành ScalingLazyListLayoutInfo và ScalingLazyColumnScope thành ScalingLazyListScope trong trường hợp chúng tôi quyết định thêm một phương thức triển khai ScalingLazyRow trong tương lai. (I22734)
Sửa lỗi
- Cập nhật tài liệu CompactChip để mô tả những việc sẽ xảy ra nếu không cung cấp cả biểu tượng và nhãn. (I4ba88)
- Chúng tôi đã thực hiện một số điều chỉnh đối với các thành phần thẻ Wear. (I6b3d0)
- Khoảng cách TitleCard giữa Title và Body đã giảm từ 8.dp xuống 2.dp.
- Thay đổi phông chữ của tiêu đề TitleCard từ Body thành title3.
- Thay đổi đối tượng nút có màu biến đổi tuyến tính (gradient) của nền thẻ để nền có màu tối hơn.
Phiên bản 1.0.0-alpha05
Ngày 1 tháng 9 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha05 và androidx.wear.compose:compose-material:1.0.0-alpha05. Phiên bản 1.0.0-alpha05 bao gồm các thay đổi sau.
Thay đổi về API
- Đánh dấu ArcPaddingValues là @Stable (I57deb)
- Giờ đây, ScalingLazyColumnState triển khai giao diện ScrollableState, cho phép các nhà phát triển có quyền truy cập có lập trình để cuộn thành phần. (I47dbc)
Sửa lỗi
- Chúng tôi đã giảm khoảng cách giữa Biểu tượng và Văn bản trong Chip và ToggleChip để chúng phù hợp với các cập nhật của Thông số kỹ thuật trải nghiệm người dùng. (I83802)
Phiên bản 1.0.0-alpha04
Ngày 18 tháng 8 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha04 và androidx.wear.compose:compose-material: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
- Thêm SwipeToDismissBox và đối tượng sửa đổi có thể vuốt có thể sử dụng để hỗ trợ cử chỉ vuốt từ trái sang phải để đóng. Mặc dù độc lập với các thành phần điều hướng, nhưng bạn cần dùng thuộc tính này để thoát khỏi một màn hình và chuyển đến màn hình khác. Thêm các thử nghiệm tích hợp vào thao tác vuốt để đóng. (I7bbaa)
- Chúng tôi đã thêm giao diện ScalingLazyColumnItemInfo và ScalingLazyColumnLayoutInfo vào lớp ScalingLazyColumnState, để các nhà phát triển biết được vị trí cũng như kích thước thực tế của các mục trong ScalingLazyColumn sau khi áp dụng tỷ lệ. Chúng tôi cũng đã sửa lỗi về cách tính tỷ lệ khi tính toán khoảng đệm nội dung "hàng đầu" được áp dụng cho ScalingLazyColumn. (I27c07)
Thay đổi về API
- Thêm lớp CurvedTextStyle để chỉ định các tuỳ chọn kiểu văn bản cong. Tương tự như TextStyle, nhưng hiện chỉ hỗ trợ màu, fontSize và nền. Các tuỳ chọn tạo kiểu khác sẽ được thêm vào trong tương lai. (I96ac3)
- Chúng tôi đã thêm giao diện ScalingLazyColumnItemInfo và ScalingLazyColumnLayoutInfo vào lớp ScalingLazyColumnState, để các nhà phát triển biết được vị trí cũng như kích thước thực tế của các mục trong ScalingLazyColumn sau khi áp dụng tỷ lệ. Chúng tôi cũng đã sửa lỗi về cách tính tỷ lệ khi tính toán khoảng đệm nội dung "hàng đầu" được áp dụng cho ScalingLazyColumn. (I27c07)
- Thêm
@ExperimentalWearMaterialApivàoSwipeDismissTargetenum, một phần của APISwipeToDismissBox. (I48b5e)
Sửa lỗi
- Thêm Material thử nghiệm cho SwipeToDismissBox (I9febc)
Phiên bản 1.0.0-alpha03
Ngày 4 tháng 8 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha03 và androidx.wear.compose:compose-material:1.0.0-alpha03. Phiên bản 1.0.0-alpha03 bao gồm các thay đổi sau.
Thay đổi về API
- Thêm thành phần CurvedText, cho phép các nhà phát triển dễ dàng viết văn bản sau đường cong vòng tròn (thường là ở cạnh màn hình tròn) (Id1267)
- Chúng tôi đã đổi tên
CardDefaults.imageBackgroundPainter()thànhCardDefaults.imageWithScrimBackgroundPainter()để làm rõ rằng hình nền có màn nền được vẽ trên đó. (I53206) - Thêm thành phần ScalingLazyColumn cung cấp một thành phần danh sách cho thư viện Wear Material, mang đến khung hiển thị hình mắt cá với kích thước nội dung danh sách giảm dần đồng thời trở nên trong suốt khi mở rộng đến cạnh thành phần đó. (I7070c)
Sửa lỗi
- Chúng tôi đã thay đổi màu mặc định của nội dung appName trong AppCard để đáp ứng bản cập nhật Thông số kỹ thuật trải nghiệm người dùng. Màu mặc định cho appName hiện là
MaterialTheme.colors.onSurfaceVariant. Ngoài ra, chúng tôi đã thêm phần mô tả tài liệu về thông số bị thiếu cho khe tiêu đề. (Ic4ad1)
Phiên bản 1.0.0-alpha02
Ngày 21 tháng 7 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha02 và androidx.wear.compose:compose-material: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
- Thêm một lớp CurvedRow mới để sắp xếp bố cục các thành phần kết hợp trong một ARC (I29941)
- Thêm loại thẻ mới để sử dụng trong các ứng dụng (TitleCard), đồng thời bổ sung tính năng hỗ trợ cho việc sử dụng hình ảnh làm nền cho Thẻ để nhấn mạnh nội dung của thẻ (I53b0f)
Thay đổi về API
- Thêm tính năng chọn hỗ trợ cho căn chỉnh theo bán kính vào CurvedRow (tương tự như cách căn chỉnh dọc trong một hàng) (Id9de5)
- Thêm một lớp CurvedRow mới để bố trí các thành phần kết hợp trong một ARC (I29941)
- Thêm loại thẻ mới để sử dụng trong các ứng dụng (TitleCard), đồng thời thêm tính năng hỗ trợ cho việc sử dụng hình ảnh làm nền cho Thẻ để nhấn mạnh nội dung của thẻ (I53b0f)
- Thêm biểu tượng bật/tắt (hộp kiểm, công tắc và nút chọn) vào ToggleChipDefaults để giúp các nhà phát triển dễ dàng định cấu hình ToggleChip và SplitToggleChips (I7b639)
- Khoảng đệm nội dung bắt đầu và kết thúc cho Chip đã được cập nhật để nhất quán là 14.dp bất kể Chip đó có biểu tượng hay không (trước đây là 12.dp nếu có biểu tượng và 14.dp nếu không có) (I34c86)
Sửa lỗi
- Thêm thử nghiệm cho CurvedRow (I93cdb)
- Nhập các phần phụ thuộc của Wear Compose vào Compose 1.0.0-rc01. (Ie6bc9)
- Thay đổi việc xử lý hoạt động vẽ hình nền trong Card và Chip để hình ảnh được Cắt thay vì bị kéo giãn nhằm duy trì tỷ lệ hình ảnh. (I29b41)
- Thêm các bản minh hoạ khác và thử nghiệm tích hợp cho Button và ToggleButton. (5e27ed2)
- Thêm các thử nghiệm Chip khác để phủ màu nội dung cho imageBackgroundChips (Ia9183)
Phiên bản 1.0.0-alpha01
Ngày 1 tháng 7 năm 2021
Phát hành androidx.wear.compose:compose-foundation:1.0.0-alpha01 và androidx.wear.compose:compose-material: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
Wear Compose là một thư viện dựa trên Kotlin, dựa trên Compose, hỗ trợ Wear Material Design, một tiện ích mở rộng của Material Design cho các thiết bị đeo WearOS. Bản phát hành alpha đầu tiên này có các hoạt động triển khai chức năng ban đầu của:
- Giao diện của Material – định cấu hình màu, kiểu chữ và hình dạng nhất quán giữa các thành phần kết hợp được sử dụng từ thư viện này.
- Khối, CompactChip – các khối có hình dạng sân vận động và có các biến thể để lấy biểu tượng, nhãn và nội dung nhãn phụ.
- – ToggleChip, SplitToggleChip – một loại khối chuyên dụng có chứa một khe cho biểu tượng bật/tắt hai trạng thái, chẳng hạn như nút chọn hoặc hộp đánh dấu. Ngoài ra, SplitToggleChip có hai vùng có thể nhấn vào, một vùng có thể nhấp vào và một vùng có thể chuyển đổi.
- Nút, CompactButton – các nút có hình tròn, có một khe nội dung duy nhất cho một biểu tượng hoặc văn bản tối thiểu (tối đa 3 ký tự).
- ToggleButton – nút bật hoặc tắt một hành động, với một khe duy nhất cho biểu tượng hoặc văn bản ở mức tối thiểu (tối đa 3 ký tự).
- Thẻ, AppCard – hình chữ nhật có các góc tròn, cung cấp các khe cho nội dung như biểu tượng ứng dụng, thời gian, tên và nội dung.
Các bản phát hành trong tương lai sẽ mở rộng phạm vi hỗ trợ của bộ Tiện ích bổ sung các bộ chọn Wear Material Design, thanh trượt, danh sách, chỉ báo trang, hộp thoại, chỉ báo thao tác cuộn, thông báo nhanh và nhiều tiện ích khác.
Ngoài ra, chúng tôi cũng cung cấp dịch vụ hỗ trợ cho các tính năng khác dành cho thiết bị đeo như bố cục và văn bản cong, đồng thời thiết lập ban đầu để giúp nhà phát triển dễ dàng xây dựng ứng dụng/lớp phủ cho Thiết bị đeo.
Wear Compose Material được thiết kế theo nguyên tắc tương tự như Compose Material, mặc dù đối tượng mục tiêu là các thiết bị đeo. Bạn nên sử dụng thư viện Wear Compose Material thay cho thư viện Compose Material khi thiết kế cho thiết bị đeo.
Hai thư viện "Material" loại trừ lẫn nhau và không được đồng thời sử dụng trong cùng một ứng dụng. Nếu nhà phát triển vô tình dùng thư viện Compose Material trong các phần phụ thuộc, màn hình sẽ thông báo a) thiếu thành phần trong thư viện Wear Compose Material, hãy cho chúng tôi biết yêu cầu của bạn, hoặc b) bạn đang sử dụng thành phần chúng tôi đề xuất không nên sử dụng trên Thiết bị đeo.