Wear Compose Material 3

  
Viết các ứng dụng Jetpack Compose cho thiết bị Wear OS bằng cách cung cấp chức năng hỗ trợ nhiều kích thước thiết bị và cử chỉ điều hướng bằng hệ thống thiết kế Material 3 Expressive.
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 13 tháng 8 năm 2025 - 1.5.0-rc02 - -

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.0-rc02"

    // For Wear Material Design UX guidelines and specifications
    implementation "androidx.wear.compose:compose-material3:1.5.0-rc02"

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation "androidx.wear.compose:compose-navigation:1.5.0-rc02"

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-rc02")
    
    // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material
    // or androidx.compose.material:material.
    // androidx.wear.compose:compose-material3 is designed as a replacement,
    // not an addition, to both of these other libraries.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material3, please raise a bug to let us know.
}

Kotlin

dependencies {
    implementation("androidx.wear.compose:compose-foundation:1.5.0-rc02")

    // For Wear Material Design UX guidelines and specifications
    implementation("androidx.wear.compose:compose-material3:1.5.0-rc02")

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation("androidx.wear.compose:compose-navigation:1.5.0-rc02")
    
    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-rc02")

    // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material
    // or androidx.compose.material:material.
    // androidx.wear.compose:compose-material3 is designed as a replacement,
    // not an addition, to both of these other libraries.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material3, 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.

Báo lỗi mới

Xem tài liệu về Công cụ theo dõi lỗi để biết thêm thông tin.

Wear Compose Material3 Phiên bản 1.5

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 lỗi trong TimePicker khi 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

  • TimePicker hiện hoàn toàn dựa vào ngôn ngữ của người dùng, sử dụng DateFormat.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)
  • DatePicker hiệ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 HorizontalPageIndicatorVerticalPageIndicator đượ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ới HorizontalPagerScaffold hoặc VerticalPagerScaffold. 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ùng modifier = Modifier.align(Alignment.BottomCenter) với HorizontalPageIndicatormodifier =Modifier.align(Alignment.CenterEnd) với VerticalPageIndicator. (I3a0ad)
  • Hướng vuốt trong SwipeToReveal hiện nhất quán cho cả LayoutDirections LTR và RTL. (I6d427)
  • Khôi phục chế độ căn giữa theo chiều dọc SwipeToReveal cho các thao tác. Nếu hasPartiallyRevealedState = true, RevealState phải được người gọi đặt lại thành RevealValue.Covered khi xảy ra thao tác cuộn. (I6473d)
  • SwipeDismissableNavHost hiệ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 EdgeButton khi LazyColumn hoặc ScalingLazyColumnreverseLayout = true. (I46a1a)
  • Khắc phục lỗi trong ScreenScaffold khi tính năng chạm để khám phá không hoạt động trong TalkBack nếu ScrollIndicator/PageIndicator được cung cấp. (I6dcee)
  • TransformingLazyColumn hiện cho phép biến đổi tuỳ chỉnh từ TransformationSpec bằng cách đọc giá trị itemHeight do TransformationSpec cung 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ới IconToggleButton. (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ố targetProgress trong drawCircularProgressIndicator hiện không được dùng. (I33309)
  • Giờ đây, Bộ chọn có vai trò ngữ nghĩa ValuePicker mà 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 SwipeToReveal trong danh sách tải từng phần (I1d4f6)
  • Các hình dạng vùng chứa trong TransformingLazyColumn hiện được điều chỉnh theo tỷ lệ để tránh cắt nội dung. (I9221a)
  • Nhãn TimePickerDatePicker cho 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 CircularProgressIndicator không xác định (Iaf0bb)
  • Khắc phục lỗi ảnh động trong TransformingLazyColumn khi các mục bị xoá. (I73034)
  • Đã sửa cách xử lý các mục neo trong TransformingLazyColumn khi các mục bị xoá. (I841a8)
  • PickerGroup hiệ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à bộ chọn đã chọn (căn giữa) bị thay đổi. (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

  • Sửa 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 TransformingLazyColumn khi 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)
  • TransformingLazyColumn hiện đọc chiều cao của mục trong trình vẽ nền, cho phép TransformationSpecs tuỳ chỉnh triển khai hiệu ứng biến đổi. (I022f0)
  • SwipeToReveal hiệ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 SwipeToReveal khiến thành phần 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 Compose đề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, OpenOnPhoneDialogSwipeToReveal hiệ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.outlinedButtonBorder hiệ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 về chiều cao EdgeButton xả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 HorizontalPageIndicatorVerticalPageIndicator bằ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 LevelIndicator khiế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, OpenOnPhoneDialog chỉ 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á iconContentDescription và tham số contentDescription khỏi icon(). Ngoài ra, ConfirmationDialogDefaults hiện có các tham số đối tượng sửa đổi trên thành phần kết hợp SuccessIconFailureIcon. (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 đối tượng đầ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ủa SwipeToReveal khi hoạt động hoặc quy trình được tạo lại. Hàm rememberRevealState hiện sử dụng Trình tiết kiệm này theo mặc định. (Ie0ecb)
  • Các nút thao tác chính và phụ SwipeToReveal phả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ái Revealing khi 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)
  • AnimatedText hiện hỗ trợ hướng văn bản từ phải sang trái (RTL) (I4533c)
  • TransformingLazyColumn hiệ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)
  • TransformingLazyColumn hiệ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 một 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)
  • OpenOnPhoneDialog trong 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 trong RevealState.currentValue khi hasPartiallyRevealedState được đặt thành false. (I9c7cf)
  • Các nút SwipeToReveal huỷ hiện là ButtonDefaults.Height theo 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án ScrollProgress thê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 các 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, IconToggleButtonTextToggleButton hỗ 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 AppScaffoldScreenScaffold để bố trí cấu trúc của màn hình và điều phối ảnh động ScrollIndicatorTimeText.
  • Nút – nhiều nút có hình dạng sân vận động được hỗ trợ 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. CheckboxButtonSwitchButton được cung cấp khi cần có nút bật/tắt, trong khi RadioButton là 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ể AlertDialog hỗ trợ nút ok/cancel hoặc EdgeButton.
  • ConfirmationDialog có 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ể TimePickerDatePicker cũng như các thành phần Bộ chọn và PickerGroup đượ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ợ (CircularProgressIndicator có 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. TitleCard cũ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, VerticalPagerScaffoldAnimatedPage điều phối ảnh động HorizontalPageIndicatorVerticalPagerIndicator. HorizontalPagerVerticalPager đượ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 Trình tăng/giảm là một thành phần toàn màn hình thường đi kèm 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 HorizontalPagerVerticalPager, đượ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.hierarchicalFocus thành Modifier.hierarchicalFocusGroup và xoá tham số lệnh gọi lại; xoá hàm nạp chồng của Modifier.hierarchicalFocusRequester bằng tham số FocusRequester; tạo CompositionLocal, LocalScreenIsActive mớ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 SwipeToReveal trong Wear Compose Foundation để chuyển sang các API SwipeToReveal trong Wear Compose Material và Wear Compose Material3. Vui lòng thay thế các mục nhập Wear Foundation SwipeToReveal bằ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 SwipeToReveal Wear 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.foundation thành androidx.wear.compose.material3. (I640e6).
  • Đã cập nhật API SwipeToReveal Wear Compose Material3 như sau: thêm các tham số primaryAction, onFullSwipe, secondaryAction, undoPrimaryAction, undoSecondaryActionhasPartiallyRevealedState vào thành phần kết hợp SwipeToReveal; xoá khả năng tuỳ chỉnh positionalThresholdanimationSpec khỏi RevealState; xoá lastActionType, revealThreshold và chiều rộng khỏi RevealState; thay đổi hàm khởi tạo RevealState để chấp nhận RevealDirection thay vì các điểm neo; xoá các hàm createRevealAnchors, điểm neo và bidirectionalAnchors; các hàm SwipeToRevealScope primaryAction, secondaryAction, undoPrimaryActionundoSecondaryAction được đổi tên thành PrimaryActionButton, SecondaryActionButton, UndoActionButton và được chuyển thành các hàm có thể kết hợp; đánh dấu RevealActionType là nội bộ. (I885d0).
  • Cập nhật thêm API SwipeToReveal như sau: đổi tên onFullSwipe thành onSwipePrimaryAction; đổi tên SwipeToRevealNonAnchoredSample để cho biết việc sử dụng tham số hasPartiallyRevealedState; xoá actionButtonHeight vì 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á SmallActionButtonHeight khỏi SwipeToRevealDefaults; đặt tham số giá trị trong hàm khởi tạo RevealValueRevealDirection thành riêng tư. (I465ce).

Sửa lỗi

  • Đã khắc phục cách xử lý EdgeButton của ScreenScaffold để sau khi một mục TransformingLazyColumn bị xoá, EdgeButton sẽ được chuyển động vào vị trí. (I6d366).
  • Cập nhật các phần phụ thuộc 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 CircularProgressIndicator khô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 núm xoay không thành công (lỗi này xảy ra 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 containerPainterdisabledContainerPainter ghi đè containerColordisabledContainerColor (I4a453).
  • Huỷ bỏ một thay đổi đối với TimeText trong bản phát hành trước đó. Thay đổi này đã di chuyển BroadcastReceiver sang một luồng worker, vì nó 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 đó sử dụng rememberUpdatedState trong Trình chọn để ghi nhớ hàm lambda contentDescription mới nhất. (Icb5b1).
  • Đã cập nhật kiểu văn bản trong TimePickerDatePicker để 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).
  • ListHeaderListSubHeader hiệ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 (các thao tác tuỳ chỉnh phải được thêm 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 MaxLines mặc định được đặt trên nội dung EdgeButton theo 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).

Wear Compose Material3 Phiên bản 1.0

Phiên bản 1.0.0-alpha37

Ngày 23 tháng 4 năm 2025

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha37. Phiên bản 1.0.0-alpha37 bao gồm các thay đổi sau.

Thay đổi về API

  • Xoá scrollTransform khỏi khu vực API công khai. Hãy sử dụng tổ hợp đối tượng sửa đổi transformedHeightgraphicsLayer nếu bạn cần có chức năng tương tự. (Ie181d)
  • Thay thế các thành phần kết hợp ImageButtonImageCard bằng các hàm nạp chồng ButtonCard/TitleCard tương ứng. Đổi tên imageButtonColors thành buttonWithContainerPainterColorsimageCardColors thành cardWithContainerPainterColors. Đã thêm ButtonDefaults.scrimBrushCardDefaults.scrimBrush công khai. Đổi tên nút imageBackgroundGradientStartColorimageBackgroundGradientEndColor thành scrimGradientStartColorscrimGradientEndColor. Đã đổi tên CardDefaults.ImageContentPadding thành CardDefaults.CardWithContainerPainterContentPadding (I7b8b6)
  • PickerPickerGroup hiện lấy contentDescription làm lambda để tránh các lần kết hợp lại không cần thiết. (I002dd)

Sửa lỗi

  • Khắc phục vấn đề CircularProgressIndicator không xác định sẽ rung lắc trong quá trình tạo ảnh động nếu chiều rộng không bằng chiều cao. (I76bfe)
  • Khắc phục vấn đề về bố cục nút cạnh có kích thước không hợp lệ. Giờ đây, ngăn việc cập nhật bố cục của nút cạnh khi chiều cao là NaN. (I32b93)
  • Tăng góc quét tối đa trong OpenOnPhoneDialog để văn bản mặc định "Kiểm tra điện thoại" không bị cắt khi dùng cỡ chữ lớn nhất. (I90af9)

Phiên bản 1.0.0-alpha36

Ngày 9 tháng 4 năm 2025

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha36. Phiên bản 1.0.0-alpha36 bao gồm các thay đổi sau.

Thay đổi về API

  • Thay thế ButtonDefaults.imageBackgroundButtonColors bằng ImageButton, ButtonDefaults.imageButtonColors, ButtonDefaults.containerPainterButtonDefaults.disabledContainerPainter. Và các thay đổi tương tự cho Thẻ. Các đối tượng Painter sẽ bị xoá khỏi ButtonColorsCardColors. (I8c6a1)
  • Cập nhật phần giữ chỗ để đơn giản hoá API. Giờ đây, chúng tôi cung cấp 2 Đối tượng sửa đổi, Modifier.placeholderShimmer để áp dụng hiệu ứng lấp lánh ở cấp thành phần và Modifier.placeholder để áp dụng một mặt nạ lên trên nội dung chưa tải (Iaee7a)

Sửa lỗi

  • Tích hợp tính năng cuộn quá mức vào ScrollIndicator. (Icfb7f)
  • Khắc phục vấn đề về nền trống và hộp thoại bị thiếu khi chạy hộp thoại material3. (Ice597)
  • Khắc phục các vấn đề trong FadingExpandingLabel khi văn bản trải dài trên nhiều dòng. (I04eb7)
  • Đã cập nhật khoảng đệm giữa nhãn chính và nhãn phụ trên các nút. (I99b7b)
  • ArcLarge đã giảm từ 20sp xuống 18sp và khoảng cách giữa các chữ cái trên ArcLargeArcSmall đã được cập nhật. ConfirmationDialog/OpenOnPhoneDialog hiện sử dụng ArcLarge mặc định thay vì ghi đè thành 18sp. (Id39a8)

Thông tin cập nhật về phần phụ thuộc

  • Thư viện này hiện hướng đến cấp độ ngôn ngữ Kotlin 2.0 và yêu cầu KGP 2.0.0 trở lên. (Idb6b5)

Phiên bản 1.0.0-alpha35

Ngày 26 tháng 3 năm 2025

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha35. Phiên bản 1.0.0-alpha35 bao gồm các thay đổi sau.

Thay đổi về API

  • Theo mặc định, khoảng đệm trên cùng AlertDialog hiện được giảm khi có biểu tượng. Điều này giúp tận dụng tối đa kích thước màn hình có sẵn. (Ief06c)
  • PagerScaffoldDefaults.FadeOutAnimation đổi tên thành PagerScaffoldDefaults.FadeOutAnimationSpec Tham số trang trên AnimatedPage đã được đổi tên thành pageIndex. (I701f2)
  • Cập nhật tên cho TransformingLazyColumn: SurfaceTransformationapplyTransformation chia thành applyContainerTransformationapplyContentTransformation, đồng thời đổi tên createBackgroundPainter thành createContainerPainter. Cập nhật thêm tên cho TransformationSpecResponsiveTransformationSpec. (I1c534)
  • AppScaffold backgroundColor đã được đổi tên thành containerColor. (I4e63f)

Sửa lỗi

  • Khắc phục một vấn đề trong FadingExpandingLabel, trong đó văn bản không phải lúc nào cũng mở rộng đúng cách. (I0e773)
  • ArcLarge đã giảm từ 20sp xuống 18sp và khoảng cách giữa các chữ cái trên ArcLargeArcSmall đã được cập nhật. ConfirmationDialog/OpenOnPhoneDialog hiện sử dụng ArcLarge mặc định thay vì ghi đè thành 18sp. (Id39a8)
  • Cập nhật ảnh động tiêu đề cho DatePickerTimePicker dựa trên, để ảnh động mờ dần và rõ dần hoạt động như một ảnh động có hiệu ứng lò xo. (I68963)
  • Tối ưu hoá PagerScaffold bằng cách tránh đọc currentPageOffsetFraction trong thành phần kết hợp AnimatedPage. (I433ef)
  • Theo mặc định, tất cả các thang kiểu chữ đều được cập nhật để có chữ số tỷ lệ, vì đây được xem là trường hợp sử dụng thường xuyên nhất và việc mặc định là dạng bảng dẫn đến khoảng cách quá lớn giữa một số cặp số nhất định. TimePickerDatePicker tiếp tục áp dụng FontFeatureSetting=tnum cho chữ số dạng bảng. (I88929)
  • Đã sửa tiêu điểm đầu vào RSB ban đầu cho TimePickerDatePicker. (I1c773)
  • Đã cập nhật văn bản mặc định trên OpenOnPhoneDialog thành "Kiểm tra điện thoại". (I00a3f)
  • Cập nhật trọng số cho ArcLargeArcMedium từ 600 thành 599 để khắc phục vấn đề trong đó trọng số 600 được coi là in đậm (I2a51d)
  • Cập nhật khoảng đệm SwipeToReveal giữ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.0.0-alpha34

Ngày 12 tháng 3 năm 2025

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha34. Phiên bản 1.0.0-alpha34 bao gồm các thay đổi sau.

Thay đổi về API

  • PagerScaffold không còn phát ra thành phần Pager nữa – thay vào đó, thành phần này phải được cung cấp thông qua Thành phần kết hợp content. AnimatedPagesnapWithSpringFlingBehaviour hiện ở chế độ công khai và có thể được dùng cùng với Pager Wear Foundation để đạt được hành vi PagerScaffold của M3 trước đây. (Xem các mẫu đã cập nhật). (Ia4724)
  • Đã cập nhật PagerState, xoá Compose Foundation PagerState làm lớp cơ sở và thêm các thuộc tính currentPage, currentPageOffsetFractionpageCount. Cập nhật giao diện GestureInclusion, đổi tên phương thức thành ignoreGestureStart. (I4ae07)
  • Giờ đây, các tham số góc quét LevelIndicator được chú thích bằng FloatRange(0, 360) (I7e636)
  • Chúng tôi đã thêm CurvedModifier.clearAndSetSemantics để cung cấp phương tiện tắt ngữ nghĩa cong. CurvedText tiếp tục mặc định nội dung mô tả thành văn bản, nhưng timeTextCurvedTexttimeTextSeparator hiện không thông báo nội dung của chúng. (I4b568)
  • Đã thêm các tham số màu nền và màu nội dung mặc định vào AppScaffold. (I56652)
  • Thao tác mặc định của HorizontalPager đối với cử chỉ vuốt đã được đổi tên thành PagerDefaults.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 một tham số SurfaceTransformation vào các thành phần nút, thẻ và tiêu đề danh sách, để các thành phần này có thể áp dụng các biến đổi nội dung và nền khác nhau khi được dùng trong các vùng chứa thay đổi giao diện của các mục dựa trên vị trí của chúng, chẳng hạn như TransformingLazyColumn. (Iabe3f)
  • Chúng tôi đã cập nhật các thuộc tính "public const val" trong Wear Compose Material3 API thành "public val" để tránh các giá trị được nội tuyến. (Ib0f32)
  • Thêm tính năng hỗ trợ cho vùng vuốt cạnh vào SwipeToReveal. Hành vi mặc định của Foundation SwipeToReveal hiện là 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ủa SwipeToReveal’ Material3 là không cho phép vuốt khi cử chỉ bắt đầu từ cạnh, khi SwipeDirection được đặt thành một hướng. (I32ef0)
  • Thêm thành phần kết hợp FadingExpandingLabel, cho phép thành phần này làm mờ văn bản theo từng dòng bằng hiệu ứng chuyển động. (Ic60fa)
  • TransformingLazyColumn hiện sử dụng contentPadding trống theo mặc định thay vì đặt mục đầu tiên và mục cuối cùng vào giữa. (I77ab7)
  • Xoá SwipeToReveal của rememberRevealState khỏi thư viện Wear Compose Material3. (I8c0e0)

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)
  • Tính năng hỗ trợ cho ScrollIndicatorPageIndicator không có dạng tròn đã bị xoá khỏi Material3. Yêu cầu về màn hình vuông cũng không còn là một phần trong các yêu cầu đối với Wear OS. Hãy xem hướng dẫn Bắt đầu để biết thêm thông tin. (I9a852)
  • CurvedTextStyle được dùng trong ConfirmationDialogDefaultsOpenOnPhoneDialogDefaults đã được cập nhật để dùng kiểu chữ ArcLarge với kích thước 18sp và khoảng cách giữa các chữ cái là 1.8sp. (Ic9ced)
  • Card, ListHeader, RadioButton, CheckboxButton, SwitchButton không còn giới hạn chiều cao của nội dung theo mặc định. Nếu cần, hãy sử dụng Modifier.height(IntrinsicSize.Min) để khôi phục hành vi trước đó. (I80bb8)
  • Chúng tôi đã cập nhật màu mặc định của TimeTextScrollIndicator để có thêm các tông màu xám, vì việc sử dụng trực tiếp OnBackground (trắng) tạo ra quá nhiều trọng số trực quan khi cạnh tranh với nội dung khác trên màn hình, chẳng hạn như tiêu đề. (I8b36f)
  • Chúng tôi đã giảm thời gian chờ để tạo ảnh động cho TimeTextScrollIndicator trong các thành phần giàn giáo xuống còn 2 giây. (I52021)
  • Chúng tôi đã cập nhật chuyển động của Hộp thoại để tỷ lệ của nền Hộp thoại được đồng bộ hoá với thao tác vuốt để đóng. (I925a9)
  • Thêm bản minh hoạ SwipeToReveal M3 bằng đối tượng sửa đổi edgeSwipeToDismiss. (I02b07)
  • Chúng tôi đã thêm một tiêu đề vào DatePickerTimePicker trong TalkBack để thông báo cho người dùng biết rằng họ cần di chuyển để đặt ngày/giờ. (Id738d)
  • AnimatedText hiện tuân theo chế độ cài đặt giảm chuyển động. (Ib6578)
  • Chúng tôi đã cải thiện việc tối ưu hoá để sử dụng AppScaffold cho nội dung Hộp thoại hiển thị nhằm cho phép nhiều hộp thoại hiển thị chồng lên nhau (I1209c)

Phiên bản 1.0.0-alpha33

Ngày 26 tháng 2 năm 2025

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha33. Phiên bản 1.0.0-alpha33 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã xoá tham số nhãn khỏi primaryActionsecondaryAction của SwipeToRevealScope. Nhà phát triển phải thêm ngữ nghĩa của thao tác tuỳ chỉnh trực tiếp vào nội dung của thành phần SwipeToReveal. (Ia67f3)
  • Chúng tôi đã xoá tiền tố "Button" (Nút) khỏi các kích thước, kiểu văn bản và hàm màu trong IconToggleButtonDefaultsTextToggleButtonDefaults (I5471d)
  • Chúng tôi đã xoá LocalMinimumInteractiveComponentEnforcement thử nghiệm (I4ad8a)
  • Chúng tôi đã thay thế DSL PickerGroupScope bằng một thành phần kết hợp. Do đó, chúng tôi đã xoá phương thức pickerGroupItem khỏi PickerGroupScope và thay vào đó, thêm @Composable PickerGroupItem để dùng thêm một Picker vào PickerGroup. Chúng tôi cũng đã cập nhật loại của tham số PickerGroup "content" thành @Composable PickerGroupScope.() -> Unit. (Ic6aec)
  • Chúng tôi đã thêm một phương thức nạp chồng LevelIndicator cho các giá trị phân số và thêm tiền tố Stepper vào những phương thức nạp chồng có tham số phạm vi (phù hợp để sử dụng với thành phần Stepper). (If4234)
  • Chúng tôi đã thêm TransformationSpec của TransformingLazyColumn vào API, cho phép xác định chính xác các phép biến đổi xảy ra với các mục khi chúng được cuộn qua TLC. (I21856)
  • Chúng tôi đã cập nhật IconButtonShapes, IconToggleButtonShapes, TextButtonShapesTextToggleButtonShapes để nhất quán với các lớp compose/material3 (I5a081)
  • Chúng tôi đã thêm tham số overscrollEffect vào ScalingLazyColumn, TransformingLazyColumnScreenScaffold. (I0cee8)
  • Chúng tôi đã đổi tên tham số swipeDirection thành revealDirection trong rememberRevealState. (I7472f)
  • Wear Pager hiện có PagerScope riêng thay vì sử dụng PagerScope của Compose. (I9195b)
  • Chúng tôi đã xoá thành phần kết hợp LinearProgressIndicatorContent, vui lòng sử dụng trực tiếp LinearProgressIndicator để các thay đổi về giá trị được tạo ảnh động theo mặc định. (I2c4ad)
  • Chúng tôi đã xoá thành phần kết hợp CircularProgressIndicatorStatic và thêm một hàm DrawScope công khai drawCircularProgressIndicator có cùng chức năng. Vui lòng sử dụng trực tiếp CircularProgressIndicator để các thay đổi được tạo ảnh động theo mặc định, nhưng hãy tạo thành phần kết hợp của riêng bạn từ drawCircularProgressIndicator nếu bạn cần ảnh động tuỳ chỉnh. (Ie762f)
  • Chúng tôi đã sắp xếp lại các tham số trong DrawScope.drawCircularProgressIndicator để di chuyển tham số targetProgress lên trên. (I8ab92)
  • API OpenOnPhoneDialog đã được cập nhật để rõ ràng và nhất quán hơn với các hộp thoại khác. Tham số show được đổi tên thành visiblecurvedText hiện do phương thức gọi cung cấp thay vì có giá trị mặc định. (Idec2d)
  • Chúng tôi đã đổi tên openOnPhoneCurvedText thành openOnPhoneDialogCurvedText (I65bdd)
  • Chúng tôi đã thêm ScrollIndicatorColors để cung cấp màu tuỳ chỉnh cho ScrollIndicator. (I9eb8c)
  • Cho phép định cấu hình màu dùng để vẽ nền phía sau TimeText. (I9f5d9)
  • Đã cập nhật kiểu chữ ArcLarge, ArcMediumArcSmall thành CurvedTextStyle (Iffc41)
  • Chúng tôi đã xoá ScreenScaffoldDefaults.contentPaddingWithEdgeButton. (Ia923e)
  • Chúng tôi đã thêm errorDim vào ColorScheme cho các lỗi có mức độ ưu tiên cao hoặc hành động khẩn cấp, chẳng hạn như cảnh báo an toàn, lớp phủ hộp thoại bị lỗi hoặc nút dừng. (I70998)

Sửa lỗi

  • Chúng tôi đã ghim wear.compose.material3 vào phiên bản 1.15.0 của androidx.core.core (I132e9)
  • Chúng tôi đã cải thiện hiệu suất của Hộp thoại bằng cách sử dụng AppScaffold để xếp lớp hộp thoại lên trên nội dung khác trên màn hình (I1b9a4)
  • Giảm khoảng đệm dọc bên trong của EdgeButton. (I1a5bb)
  • Chúng tôi đã thêm ngữ nghĩa Nút vào các nút Thanh trượt. (I80cc6)

Phiên bản 1.0.0-alpha32

Ngày 29 tháng 1 năm 2025

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha32. Phiên bản 1.0.0-alpha32 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)
  • Chúng tôi đã cập nhật IconButtonShapes, IconToggleButtonShapes, TextButtonShapesTextToggleButtonShapes để cải thiện tính nhất quán trên các thư viện Material3. Thay đổi này cũng giới thiệu tính năng lưu vào bộ nhớ đệm hình dạng để giảm số lượng phân bổ. (I049fc)
  • Chúng tôi đã xoá tham số pressedShapeCornerSizeFraction khỏi phương thức variantAnimatedShape trong IconToggleButtonTextToggleButton (I58a65)
  • Chúng tôi đang giới thiệu những điểm cải tiến đối với tính năng kết xuất văn bản cong (bao gồm cả TimeText) không tương thích với màn hình không tròn. Yêu cầu về màn hình không tròn cũng không còn là một phần trong các yêu cầu đối với Wear OS. Hãy xem hướng dẫn Bắt đầu để biết thêm thông tin. (I1cc1c)
  • Chúng tôi đã cập nhật ButtonGroupScope của ButtonGroup, thay thế ButtonGroupItem dựa trên DSL bằng Modifier.weight, Modifier.minWidthModifier.enlargeOnPress. (I16c3c)
  • Trong API ButtonGroup, chúng tôi đã cập nhật ButtonGroupScope dựa trên đối tượng sửa đổi mới: enlargeOnPress hiện được gọi là animateWidth và nhận một InteractionSource thay vì MutableInteractionSource vì không cần phải thay đổi MutableInteractionSource. Chúng tôi cũng đã thêm hằng số công khai ButtonGroupDefaults.DefaultMinWidth, chiều rộng tối thiểu mặc định của các nút trong ButtonGroup. (Ie27ec)
  • Chúng tôi đã cập nhật ListHeaderDefaults.contentColor để bắt đầu bằng một chữ cái viết thường vì đây là một thuộc tính có thể kết hợp (I125a5)
  • Chúng tôi đã thêm một tham số mô tả nội dung vào SliderDefaults.DecreaseIconSliderDefaults.IncreaseIcon, với các giá trị mặc định phù hợp (I2e1a7)
  • Chúng tôi đã đổi tên tham số spacing trong PickerPickerGroup thành verticalSpacing (Ib75cc)
  • Chúng tôi đã xoá ConfirmationDialogDefaults.successTextfailureText vì dự kiến các phương thức gọi của ConfirmationDialog sẽ cung cấp các chuỗi có nhiều ngữ cảnh hơn. Đồng thời đổi tên confirmationCurvedText thành confirmationDialogCurvedText. Cuối cùng, đổi tên tham số show của hộp thoại thành visible để đảm bảo tính nhất quán với các bản cập nhật gần đây khác cho hộp thoại. (I10074)
  • Đổi tên IconButton thành disabledImageOpacity sang DisabledImageOpacity. (I5f94a)

Sửa lỗi

  • Chúng tôi đã khắc phục một lỗi trong ảnh động EdgeButton để kích thước chính xác được dùng trong mỗi khung hình (Id3b58)
  • Khắc phục vấn đề animateContentSize không hoạt động với Button. (Ib18a0)
  • Chúng tôi đã thay đổi thang kiểu chữ Tiêu đề lớn để có cỡ chữ 18dp (Ic9d52)
  • Chúng tôi đã cập nhật khoảng cách AlertDialog và kích thước biểu tượng (Iac28c)
  • Chúng tôi đã khắc phục sự không nhất quán trong các điểm ngắt màn hình lớn (màn hình có kích thước từ 225 dp trở lên là màn hình lớn) (I36474)
  • Khắc phục một lỗi nhỏ về vị trí nút (I952c2)

Phiên bản 1.0.0-alpha31

Ngày 15 tháng 1 năm 2025

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha31. Phiên bản 1.0.0-alpha31 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 đã cập nhật API ScreenScaffoldEdgeButton để bạn dễ dàng chỉ định khoảng đệm nội dung trên những màn hình có EdgeButton. Trong API mới, size của EdgeButton chỉ được truyền đến EdgeButtonScreenScaffold lấy tham số edgeButtonSpacing cho khoảng cách giữa EdgeButton và nội dung danh sách. (I424fd)
  • Trong DatePicker, chúng tôi đã đổi tên các tham số minDate thành maxDateminValidDate thành maxValidDate. Trong DatePickerColors, chúng tôi đã đổi tên tham số selectedPickerContentColor thành activePickerContentColorunselectedPickerContentColor thành inactivePickerContentColor (Iba17b)
  • Chúng tôi đã cập nhật giá trị mặc định ArcProgressIndicator thành strokeWidth=6dp và đề xuất diameter = 81.24% về chiều cao màn hình (I6f248)
  • Chúng tôi đã cập nhật Confirmation API để phản ánh việc sử dụng API này dưới dạng một hộp thoại. Thành phần kết hợp này hiện có tên là ConfirmationDialog, cùng với các nội dung cập nhật liên quan đến việc đặt tên cho các lớp màu và mặc định. Chúng tôi cũng đã đổi tên tham số show thành visible để tương thích với các API ảnh động Compose khác. Ngoài ra, chúng tôi đã cung cấp ConfirmationDialogContent, SuccessConfirmationDialogContent, FailureConfirmationDialogContent cho những trường hợp nhà phát triển cần tuỳ chỉnh ảnh động hộp thoại phần đầu/phần cuối. (Iaeb33)
  • Chúng tôi đã cập nhật CircularProgressIndicatorContent thành CircularProgressIndicatorStatic (biến thể không có ảnh động của CircularProgressIndicator) để giờ đây, bạn có thể dùng biến thể này để tạo CircularProgressIndicator bằng ảnh động tuỳ chỉnh. (I1346f)
  • Chúng tôi đã cố định thứ tự tham số trên ArcProgressIndicator, đặt tham số đối tượng sửa đổi lên đầu tiên (I4656a)
  • Cải thiện API SwipeToReveal để nhận một tham số vị trí văn bản cho nhãn của các thao tác (ngoại trừ thao tác phụ) và xoá các tham số nhãn khỏi thao tác huỷ (I5b3db)

Sửa lỗi

  • Chúng tôi đã khắc phục một lỗi khiến chế độ rung LongPress được kích hoạt nhiều lần trong Button, Card, IconButton, TextButton (Ia8b0f)
  • Các thay đổi về trải nghiệm người dùng của AlertDialog – trên màn hình lớn, các nút xác nhận và đóng hiện có kích thước nhỏ hơn. Ngoài ra, khoảng cách bên dưới các nút xác nhận và loại bỏ cũng được tăng lên. (I4f066)
  • Chúng tôi đã thay đổi thông số kỹ thuật của ảnh động cho nhãn nút thao tác của thành phần SwipeToReveal. (Ib87fb)
  • Đã thay đổi SwipeToReveal để mở rộng vùng chứa cùng lúc văn bản hiển thị. (I44cf8)
  • Cải thiện SwipeToReveal để thực hiện phản hồi xúc giác khi thao tác vuốt vượt qua ngưỡng mà hành động chính được thực hiện. (I23efe)
  • Chúng tôi đã cập nhật SwipeToReveal để hiển thị dấu ba chấm khi văn bản tràn theo mặc định, đối với các thao tác chính và thao tác huỷ. (I71f5a)
  • Chúng tôi đã khắc phục một vấn đề gây ra hiện tượng rung giật trên ảnh động ButtonGroup. (I63f8f)
  • Chúng tôi đã thêm ngữ nghĩa văn bản vào AnimatedText (I6063c)
  • Giờ đây, hộp thoại sẽ đặt lại tỷ lệ thu phóng nền khi hộp thoại bị xoá khỏi thành phần (nếu không có bản sửa lỗi này, màn hình khởi chạy có thể vẫn ở trạng thái thu nhỏ) (Id24ac)
  • Chúng tôi đã thêm ảnh động biến đổi hình dạng vào các nút trong thành phần Stepper (Id6ed3)

Phiên bản 1.0.0-alpha30

Ngày 11 tháng 12 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha30. Phiên bản 1.0.0-alpha30 bao gồm các thay đổi sau.

Thay đổi về API

  • Công cụ sửa đổi scrollTransform cho TransformingLazyColumn đã được tái cấu trúc, điều này đã kích hoạt một thay đổi về API. (I0c6dc)
  • Chúng tôi đã cập nhật IconToggleButtonShapesTextToggleButtonShapes để có 2 tham số hình dạng riêng biệt là uncheckedPressedcheckedPressed (I85dbd)
  • Giờ đây, các lựa chọn không hợp lệ về tháng/ngày sẽ xuất hiện trong DatePicker, cùng với invalidPickerContentColor mới, khi bạn sử dụng minDate hoặc maxDate. (If4541)
  • Chúng tôi đã cập nhật API Stepper để cung cấp các ô trống increaseIcondecreaseIcon. Bạn có thể tạo nội dung cho các ô trống này như bình thường từ thành phần kết hợp Biểu tượng. (Id35da)
  • Chúng tôi đã cập nhật dynamicColorScheme bằng cách xoá tham số defaultColorScheme không bắt buộc và hiện trả về ColorScheme có thể nhận giá trị rỗng. Điều này có nghĩa là phương thức gọi phải xử lý rõ ràng trường hợp dự phòng khi không có bảng phối màu động. (I6d62e)
  • Chúng tôi đã cập nhật kích thước biểu tượng trong ButtonDefaults để sử dụng với CompactButton. CompactButton chỉ chứa biểu tượng nên dùng ButtonDefaults.SmallIconSize = 24.dp, còn CompactButton chứa cả biểu tượng và văn bản nên dùng ButtonDefaults.ExtraSmallIconSize = 20.dp. Bạn nên để CompactButton bao bọc nội dung của nó (thay vì lấp đầy chiều rộng tối đa) và các mẫu đã được cập nhật để cho thấy điều đó. (I0582c)
  • Chúng tôi đã thêm EdgeButtonDefaults với các kích thước biểu tượng được đề xuất cho 4 EdgeButtonSizes khác nhau. Ngoài ra, chúng tôi đã cập nhật bố cục EdgeButton để có khoảng đệm dưới lớn hơn một chút so với khoảng đệm trên, giúp cải thiện giao diện cho cả nội dung Biểu tượng và Văn bản. (Id772a)
  • Chúng tôi đã thêm chuyển động vào LinearProgressIndicator và hiển thị LinearProgressIndicatorContent. LinearProgressIndicatorContent cung cấp nội dung trực quan mà không có ảnh động. (Idee99)
  • Chúng tôi đã thêm một thành phần kết hợp CircularProgressIndicatorContent mới để hiển thị nội dung trực quan của CircularProgressIndicator mà không có ảnh động. (Ie33d4)
  • TransformingLazyColumn mới cung cấp thành phần cục bộ LocalTransformingLazyColumnItemScopeCard, ButtonListHeader hiện dùng để tự động biến đổi khi được đặt bên trong TransformingLazyColumn. Người gọi có thể tắt tính năng biến đổi tự động bằng trình bao bọc TransformExclusion mới. (I1652f)
  • Chúng tôi đã cập nhật loại ButtonDefaults.shape thành RoundedCornerShape (Iccdf2)

Sửa lỗi

  • Chúng tôi đã khắc phục một lỗi để tôn trọng giá trị alpha hiện có trên nền cho TimeText (I1eb60)
  • Chúng tôi đã đặt TextMotion thành Animated theo mặc định trong kiểu chữ của mình để tránh văn bản bị chập chờn do các glyph chữ cái được gắn vào ranh giới pixel trong quá trình thao tác thu phóng. (I626fa)
  • Chúng tôi đã cập nhật giao diện của ScrollIndicator bằng cách tăng chiều rộng và kích thước khoảng trống để cải thiện khả năng hiển thị. (Ied7cb)
  • Chúng tôi đã khắc phục một lỗi trên Modifier.scrollTransform khi thêm/xoá/di chuyển các mục. (I6830f)
  • Chúng tôi đã khắc phục vấn đề về ảnh động của nút tròn khi nhấn nhanh (trước đây, thời lượng tối thiểu của ảnh động không phải lúc nào cũng được tuân thủ). (I757a7)
  • Chúng tôi đã cập nhật góc quét cho LevelIndicator thành 20% (tức là 72 độ). (Idde5c)
  • Chúng tôi đã khắc phục lỗi định vị ScrollIndicator khi ScalingLazyColumn được dùng với AutoCenteringParams. (I387dd)
  • Chúng tôi đã cập nhật màu sắc và kiểu chữ cho ListHeaderListSubHeader. Ngoài ra, màu sắc của các nút điều khiển bật/tắt trên CheckboxButtonSwitchButton. (I39817)
  • Chúng tôi đã khắc phục vấn đề về vị trí của ScrollIndicator trong LazyColumnScalingLazyColumn bằng ContentPadding. (I2bc51)
  • Chúng tôi đã khắc phục một lỗi trong ảnh động tiến trình OpenOnPhoneDialog bằng cách sử dụng CircularProgressIndicatorContent mới. (I3e443)
  • Chúng tôi đã cập nhật HorizontalPagerScaffoldVerticalPagerScaffold để tắt ảnh động khi chế độ giảm chuyển động được bật (Iaaf68)
  • Chúng tôi đã triển khai một ảnh động riêng cho chỉ báo tiến trình hình tròn khi tiến trình đạt trên 100%. (I47135)
  • Chúng tôi đã khắc phục lỗi EdgeButton có thể được vẽ bằng một hình dạng không chính xác trong các thành phần Pager (Trình xem trang) (I91db9)

Phiên bản 1.0.0-alpha29

Ngày 13 tháng 11 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha29. Phiên bản 1.0.0-alpha29 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã cập nhật TimeText để cung cấp nội dung mặc định cho biết thời gian. (Id23b3)
  • Chúng tôi đã đơn giản hoá ScrollInfoProvider cho PagerState bằng cách xoá tham số orientation vì tham số này không còn cần thiết nữa. Hành vi mới là TimeText vẫn giữ nguyên vị trí cho cả thao tác phân trang theo chiều ngang và chiều dọc. (I71767)
  • LocalHapticFeedback hiện cung cấp chế độ triển khai HapticFeedback mặc định khi Vibrator API cho biết rằng tính năng phản hồi xúc giác được hỗ trợ. Những nội dung sau đây đã được thêm vào HapticFeedbackTypeConfirm, ContextClick, GestureEnd, GestureThresholdActivate, Reject, SegmentFrequentTick, SegmentTick, ToggleOn, ToggleOff, VirtualKey. Các thành phần có thể nhấp và giữ của Wear Compose (chẳng hạn như Button, IconButton, TextButtonCard) hiện thực hiện chế độ rung LONG_PRESS khi bạn cung cấp trình xử lý thao tác nhấp và giữ. (I5083d)

Sửa lỗi

  • Chúng tôi đã cập nhật chuyển động cho phần Xác nhận. (I04bff)
  • Chúng tôi đã cập nhật phần phụ thuộc API tối thiểu thành 1.7.4 cho các thư viện Compose. (I88b46)
  • Đã thêm chuyển động mới cho hộp thoại OpenOnPhone. (I1e10a)
  • Chúng tôi đã khắc phục một lỗi trong LevelIndicator để hiện tại, lỗi này được hiển thị chính xác với cấp độ là 0. (Ie95a4)
  • Chúng tôi đã cập nhật ảnh động HorizontalPageIndicatorVerticalPageIndicator. (I5c8f3)
  • Chúng tôi đã thêm hiệu ứng thu nhỏ thành dấu chấm vào ArcProgressIndicator không xác định. (I9fd51)

Phiên bản 1.0.0-alpha28

Ngày 30 tháng 10 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha28. Phiên bản 1.0.0-alpha28 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã thêm một biến thể vòng cung vào chỉ báo tiến trình dạng xoay tròn không xác định (I2efc1)
  • Chúng tôi đã công khai các thành phần kết hợp AlertDialogContentDialog tạo nên API AlertDialog, để bạn có thể thêm chế độ tuỳ chỉnh nếu cần (chẳng hạn như tuỳ chỉnh ảnh động AlertDialog trong khi vẫn giữ bố cục nội dung được đề xuất). Ngoài ra, chúng tôi đã thêm các tham số ModifierColor vào các thành phần EdgeButton, ConfirmButtonDismissButton của AlertDialogDefaults. (I4eb71)
  • Chúng tôi đã cập nhật API Placeholder như sau: đổi tên PlaceholderState.startPlaceholderAnimation thành PlaceholderState.animatePlaceholder, PlaceholderState.isShowContent thành PlaceholderState.isHiddenPlaceholderDefaults.shape thành PlaceholderDefaults.Shape; đổi tên tham số painter trong painterWithPlaceholderOverlayBackgroundBrush thành originalPainter; thay đổi khả năng hiển thị của PlaceholderState.placeholderProgression từ công khai thành nội bộ và đổi tên thành placeholderShimmerProgression; thêm hằng số thời lượng hoạt ảnh của phần giữ chỗ vào PlaceholderDefaults. (Ie5a59)
  • Chúng tôi đã cập nhật API EdgeButton như sau: đổi tên tham số trên ScreenScaffold từ bottomButton thành edgeButton; đặt EdgeButtonSize thành một lớp giá trị. (Ieef15)
  • Chúng tôi đã thay đổi chế độ hiển thị của copy() thành công khai trong các lớp Màu sắc wear material3 (I0287f)

Sửa lỗi

  • Thêm thời lượng tối thiểu cho ảnh động IconToggleButtonTextToggleButton khi nhấp vào (Ieb333)
  • Thêm thời lượng tối thiểu cho ảnh động hình dạng IconButtonTextButton (Iebcee)
  • Đã sửa trạng thái của lựa chọn lặp lại của DatePicker. (I3587c)
  • Thêm chuyển động cho hộp thoại Cảnh báo và Xác nhận. (I173b1)

Phiên bản 1.0.0-alpha27

Ngày 16 tháng 10 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha27. Phiên bản 1.0.0-alpha27 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã cập nhật ScreenScaffoldScrollIndicator sau khi đổi tên Wear Compose Foundation LazyColumn thành TransformingLazyColumn. (I0608b)
  • Tham số preferredHeight của EdgeButton đã được đổi tên thành buttonSize và bạn chỉ có thể chọn giá trị của tham số này trong số 4 hằng số trong lớp giá trị EdgeButtonSize mới được giới thiệu. (Icdd70)
  • Chúng tôi đã thay đổi tên của ListSubheader thành ListSubHeader và thêm các giá trị mặc định có thể truy cập công khai cho ListHeaderListSubHeader. (I96730)
  • Chúng tôi đã thêm các thành phần HorizontalPagerScaffoldVerticalPagerScaffold mới cho Wear, cung cấp ảnh động mới và sự phối hợp giữa các thành phần văn bản thời gian và chỉ báo trang. (Iff7d0)
  • Chúng tôi đã thêm tính năng hỗ trợ thao tác xoay cho HorizontalPagerScaffoldVerticalPagerScaffold, cho phép người dùng điều hướng các trình phân trang bằng thiết bị đầu vào xoay. (I9770d)
  • Chúng tôi đã thực hiện các thay đổi đối với API MotionScheme để đơn giản hoá việc sử dụng và cải thiện tính nhất quán. Xoá các hàm ghi nhớ nội tuyến và chuyển Motion Schemes tích hợp sang một đối tượng đồng hành MotionScheme chuyên dụng. Đổi tên standardMotionSchemeexpressiveMotionScheme thành chuẩn và biểu cảm. (I5fd45)
  • Chúng tôi đã thêm tính năng hỗ trợ bảng phối màu động dựa trên màu hệ thống. (I073e9)
  • Chúng tôi đã cập nhật Trình tăng bước theo các thông số kỹ thuật mới nhất về trải nghiệm người dùng. (I622bb)

Sửa lỗi

  • Chúng tôi đã cập nhật kiểu chữ và khoảng đệm cho các thành phần Thẻ. (I3ae48)
  • Chúng tôi đã thay đổi khoảng đệm trong AlertDialog giữa các nút Xác nhận/Huỷ và phần còn lại của nội dung từ 8 dp thành 12 dp theo thông số kỹ thuật của trải nghiệm người dùng (Ie55f0)
  • Chúng tôi đã cập nhật độ mờ của màu cho thành phần Thanh trượt. (Idb383)

Phiên bản 1.0.0-alpha26

Ngày 2 tháng 10 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha26. Phiên bản 1.0.0-alpha26 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã cập nhật API và giao diện của HorizontalPageIndicator, đồng thời thêm VerticalPageIndicator để sử dụng với VerticalPager (Ic9309)
  • Giờ đây, AlertDialog hỗ trợ khả năng bỏ qua nút dưới cùng mặc định trong biến thể ngăn xếp nút, đối với những bố cục tuỳ chỉnh không yêu cầu EdgeButton. (I34fa9)
  • Chúng tôi đã thêm một thành phần SwipeToReveal cho Wear Material 3 (Ic38b2)
  • 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 đã đổi tên tham số buttonHeight của EdgeButton thành preferredHeight. (I4fab3)
  • Phiên bản Kotlin đã được cập nhật lên 1.9 (I1a14c)
  • Chúng tôi đã đổi tên OpenOnPhoneDialogDefaults.Icon thành OpenOnPhoneDialogDefaults.OpenOnPhoneIcon để tránh xung đột với Icon(I0f391)
  • Chúng tôi đã thêm tính năng hỗ trợ cho ScrollIndicator trong LazyColumn. (Ia546a)
  • Chúng tôi đã cập nhật các giá trị mặc định cho TextToggleButtonIconToggleButton. (I7aaa9)
  • Chúng tôi đã đơn giản hoá API PickerPickerGroup. (Id0653)
  • Chúng tôi đã thêm CardDefaults.ShapeCardDefaults.Height (là các mã thông báo). Nếu không, các mã này sẽ chỉ dành riêng cho những nhà phát triển sử dụng thư viện. (I1594a, b/347649765)
  • Chúng tôi đã đổi tên tham số tiến trình cho chỉ báo tiến trình dạng vòng tròn phân đoạn nhị phân thành segmentValue. (Ib72d9)
  • Chúng tôi đã cập nhật màu sắc và bố cục cho Thanh trượt. (Ic3eec)

Sửa lỗi

  • Chúng tôi đã cập nhật ảnh động biểu tượng openOnPhone (I66f85)
  • Hiện tại, chúng tôi đang sử dụng biểu tượng Google Symbols trong Slider, TimePickerDatePicker. (I46c7c)
  • Chúng tôi đã cập nhật khoảng đệm trong ConfirmationOpenOnPhoneDialog. (Iaa82e)

Phiên bản 1.0.0-alpha25

Ngày 18 tháng 9 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha25. Phiên bản 1.0.0-alpha25 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã thêm một Chỉ báo tiến trình dạng xoay tròn không xác định. (I427a7)
  • Chúng tôi đã thêm tính năng hỗ trợ trạng thái tràn tiến trình (>100% tiến trình) cho cả CircularProgressIndicatorSegmentedCircularProgressIndicator. Khi tiến trình vượt quá 1.0, màu overflowTrack mới sẽ cho biết điều này. (Iaaa3d)
  • Giờ đây, IconToggleButtonTextToggleButton dạng tròn hỗ trợ một biến thể mới của hiệu ứng chuyển động hình dạng, trong đó các hình dạng khác nhau thể hiện trạng thái đã chọn, chưa chọn và đã nhấn. Phiên bản hình dạng có hiệu ứng động trước đó cho trạng thái vừa nhấn vẫn được hỗ trợ. (I29f03)
  • Chúng tôi đã ngừng hỗ trợ việc sử dụng EdgeButton với Column, do cần phải chỉ định rõ chiều cao EdgeButton trong ScreenScaffold. (Ie353d)
  • Chúng tôi đã thêm chế độ hỗ trợ cho LazyColumn Wear Compose bằng ScreenScaffold (và thêm một quy trình triển khai ScrollInfoProvider cho LazyColumnState). (Ib8d29)
  • Chúng tôi đã kết hợp LocalTextMaxLines, LocalTextAlign, LocalTextOverflow thành một thành phần cục bộ LocalTextConfiguration duy nhất để cung cấp một giải pháp có khả năng mở rộng hơn trong tương lai. (I5edbc)
  • Chúng tôi đã thêm arc-large làm thang kiểu chữ bổ sung, dành riêng cho các chuỗi văn bản tiêu đề ngắn ở trên cùng hoặc dưới cùng của màn hình, chẳng hạn như trong lớp phủ Xác nhận. (I60e3e)
  • Chúng tôi đã thêm các giá trị mặc định vào Nút cho kích thước biểu tượng lớn và cực lớn cũng như khoảng đệm nội dung được đề xuất. (I84675)

Sửa lỗi

  • Chúng tôi đã cập nhật màu sắc cho IconButtonTextButton. (I48324)
  • Chúng tôi đã thay đổi các phương thức nạp chồng Button cơ bản thành căn giữa theo chiều dọc để đảm bảo tính nhất quán với các phương thức nạp chồng khác. Để khôi phục hành vi trước đó, hãy sử dụng Modifier.align từ RowScope. (I66e57)

Phiên bản 1.0.0-alpha24

Ngày 4 tháng 9 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha24. Phiên bản 1.0.0-alpha24 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã thêm một lược đồ Chuyển động vào giao diện Material3. Các thành phần trong thư viện sẽ dùng đối tượng này để áp dụng các thông số kỹ thuật về ảnh động, chẳng hạn như lò xo cho chuyển động biểu cảm. (I54ff3)
  • Chúng tôi đã thêm các thành phần AppScaffoldScreenScaffold vào thư viện Material3, bao gồm cả chức năng điều phối việc xếp lớp và chuyển đổi TimeTextScrollIndicator. AppScaffold cung cấp cấp cao nhất của các thành phần khung nằm trên tất cả màn hình. Do đó, việc thêm TimeText vào AppScaffold cho phép thành phần này giữ nguyên vị trí trong khi vuốt giữa các màn hình. Bản thân màn hình có thể ghi đè hoặc ẩn văn bản thời gian. ScreenScaffold cung cấp một vị trí cho ScrollIndicator và tự động tạo hiệu ứng cho chỉ báo cuộn khi cuộn, bao gồm cả thời gian chờ để ẩn chỉ báo cuộn sau khi không hoạt động. (I047d6)
  • Chúng tôi đã thêm ScrollIndicator có thiết kế Material 3 mới. Thành phần này có kích thước hình thu nhỏ cố định dựa trên nội dung danh sách ban đầu, nhằm tránh các biến thể về kích thước khi nội dung tải chậm được tải vào danh sách. (Ic228d)
  • Chúng tôi đã thay đổi API ScrollAway để ScreenStage là một lớp giá trị thay vì một lớp enum, nhằm cho phép thêm các giai đoạn bổ sung khi cần trong tương lai. (I48c93)
  • Chúng tôi đã thêm EdgeButton, một nút dành riêng cho Wear có hình dạng đặc trưng theo đường cong ở cuối màn hình (I16369)
  • Chúng tôi đã thêm một vị trí mới vào ScreenScaffold cho một nút dưới cùng (chẳng hạn như EdgeButton), nút này sẽ xuất hiện và được đổi kích thước tuỳ thuộc vào nội dung cuộn (I032eb)
  • Chúng tôi đã thêm Modifier.scrollTransformModifier.targetMorphingHeight để thêm hiệu ứng chuyển động Material3 vào các mục trong LazyColumn. (Ie229a)
  • Chúng tôi đã thêm SegmentedCircularProgressIndicator làm một biến thể của CircularProgressIndicator. Phiên bản phân đoạn cho thấy một giá trị tiến trình duy nhất trên tất cả các phân đoạn hoặc cho thấy từng phân đoạn đang bật/tắt. (I6e059)
  • Chúng tôi đã thêm LinearProgressIndicator để thay thế cho CircularProgressIndicator hiện có. (I89182)
  • Chúng tôi đã thêm AlertDialog, cung cấp bố cục để trình bày các lời nhắc quan trọng cho người dùng. Các biến thể được đưa vào cho một cặp nút xác nhận/loại bỏ hoặc một nút dưới cùng (thường là EdgeButton) bên dưới một nhóm các lựa chọn. Cả hai biến thể đều có các vị trí cho biểu tượng, tiêu đề và văn bản bổ sung để cung cấp thêm thông tin chi tiết. (Ieb873)
  • Chúng tôi đã thêm OpenOnPhoneDialog. Bạn nên dùng mã này để cho biết một thao tác sẽ tiếp tục trên điện thoại của người dùng. OpenOnPhoneDialog sẽ bị đóng sau một khoảng thời gian chờ cụ thể. (I978fd)
  • Chúng tôi đã thêm Confirmation, một thành phần hộp thoại có các ô cho biểu tượng và văn bản dạng đường cong hoặc tuyến tính. Các biến thể cụ thể được cung cấp cho thông báo thành công/thất bại. Thông báo xác nhận sẽ tự động đóng sau một khoảng thời gian chờ. (Ib43e8)
  • Chúng tôi đã thêm nền cho TimeText để giảm thiểu các vấn đề khi nội dung cơ bản và TimeText chồng lên nhau, che khuất thời gian. (Ia11fd)
  • Chúng tôi đã thêm LevelIndicator, cho biết giá trị của một chế độ cài đặt (chẳng hạn như âm lượng) và có thể dùng với thành phần Stepper hiện có để tạo màn hình âm lượng. LevelIndicator tương tự như ScrollIndicator, nhưng được hiển thị ở phía đối diện của màn hình và có độ rộng nét vẽ lớn hơn cũng như màu chỉ báo khác theo mặc định. (I8a4ac)
  • Chúng tôi đã thêm TimePicker, với bố cục cho thời gian 24 giờ (có hoặc không có giây) hoặc thời gian 12 giờ có lựa chọn sáng/chiều. (Ia5124)
  • Chúng tôi đã thêm DatePicker, với cấu hình cho thứ tự cột (tức là ngày-tháng-năm, tháng-ngày-năm hoặc năm-tháng-ngày) và ngày tối thiểu/tối đa (không bắt buộc). (Ibf13b)
  • Chúng tôi đã thêm một tham số trọng số vào hàm text của TimeText. Trong trường hợp TimeText bao gồm nhiều phần tử văn bản, thuộc tính này cho phép kiểm soát cách phân phối khoảng trắng. (I36700)
  • Chúng tôi đã thêm RadioButtonSplitRadioButton – các thành phần này giúp đơn giản hoá API trước đó bằng cách kết hợp cả (Split)SelectableButton và nút điều khiển chọn một (If7ae8)
  • Chúng tôi đã thêm CheckboxButtonSplitCheckboxButton – các thành phần này đơn giản hoá API trước đó bằng cách kết hợp cả (Split)ToggleButton và chế độ kiểm soát Checkbox con (Ia8f70)
  • Chúng tôi đã thêm SwitchButtonSplitSwitchButton – các thành phần này đơn giản hoá API trước đó bằng cách kết hợp cả (Split)ToggleButton và nút điều khiển Switch con (I0d349)
  • Chúng tôi đã cập nhật tài liệu AnimatedText để giải thích hành vi vượt quá. (Iff30a)
  • Chúng tôi đã thêm ButtonGroup để kết hợp 2 hoặc 3 nút sao cho các lần nhấn nút tạo ra một ảnh động phối hợp. (Ie27db)
  • Chúng tôi đã thêm hiệu ứng động không bắt buộc cho hình dạng của IconButtonTextButton khi nhấn. (Iffca5)
  • Chúng tôi đã thêm một biến thể màu khác là FilledVariant vào Button, IconButton, TextButton, CompactButtonEdgeButton (I65fc3)
  • Chúng tôi đã thêm tham số forcedSize vào ImageWithScrimPainter, sao cho theo mặc định, nền hình ảnh của Button (Nút) hiện duy trì kích thước thành phần. Việc đặt forcedSize = null sẽ áp dụng Painter.instrinsicSize thay thế. (Ic57af)
  • Chúng tôi đã thêm thao tác nhấp và giữ vào Nút (Ib613d)
  • Chúng tôi cũng đã thêm tính năng hỗ trợ lượt nhấp kéo dài cho IconButtonTextButton. (I38891)
  • Đã thêm tính năng hỗ trợ lượt nhấp kéo dài cho Thẻ. (I305d5)
  • Chúng tôi đã thêm LocalTextMaxLines, LocalTextAlign, LocalTextOverflow làm CompositionLocals và sử dụng chúng làm giá trị mặc định của tham số trên Text. Giờ đây, các thành phần cục bộ có thể được dùng bởi các thành phần như CheckboxButton, SwitchButton, RadioButton để triển khai hướng dẫn về trải nghiệm người dùng, nhưng các nhà phát triển có thể ghi đè các tham số nếu cần. (Iab841)
  • Chúng tôi đã thêm Placeholder để giúp che nội dung của các thành phần như nút và thẻ cho đến khi dữ liệu được tải. (I1a532)
  • Chúng tôi đã thêm IconToggleButtonColorsTextToggleButtonColors để thay thế ToggleButtonColors (hiện đã bị xoá). (Ie0bf1)

Sửa lỗi

  • Chúng tôi đã cập nhật Button, FilledTonalButton, OutlinedButton, ChildButton, CompactButton để sử dụng CompositionLocals LocalTextMaxLines, LocalTextAlign, LocalTextOverflow mới nhằm triển khai hướng dẫn về trải nghiệm người dùng – nhà phát triển có thể trực tiếp ghi đè các tham số này trên Văn bản nếu cần (Ie51f7)
  • Chúng tôi đã thay đổi chiều rộng nét mặc định của LevelIndicator thành 6dp để phân biệt với ScrollIndicator có chiều rộng nét là 4dp. (If6f63)
  • Chúng tôi đã khắc phục một vấn đề trong TimeText để hỗ trợ các góc quét lớn hơn. (Ie489f)
  • Khắc phục một vấn đề trong quá trình kết hợp lại EdgeButton. (I4cdca)
  • Đã sửa bố cục của các nút bật/tắt chia tách khi có khoảng đệm nội dung tuỳ chỉnh. (Ia33d3)
  • Làm tròn các giá trị tiến trình nhỏ lên ít nhất bằng chiều rộng đường kẻ của chỉ báo tiến trình. (I3bd84)

Phiên bản 1.0.0-alpha23

Ngày 14 tháng 5 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha23. Phiên bản 1.0.0-alpha23 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã cập nhật API ToggleButtonRadioButton để bạn có thể định cấu hình màu bị tắt. (If13a7)
  • Chúng tôi đã thêm một CircularProgressIndicator mới cho Material3. (Ib3bd7)

Sửa lỗi

  • Chúng tôi đã khắc phục một lỗi khiến các nút có thể chọn thông báo nhấn đúp để bật/tắt khi đã chọn. (I7ed88)

Phiên bản 1.0.0-alpha22

Ngày 1 tháng 5 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha22. Phiên bản 1.0.0-alpha22 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã cập nhật ColorScheme Material3. (I7b2b8)
  • Chúng tôi đã cập nhật Material3 Switch – ngoài một số thay đổi về màu sắc, dấu đánh dấu hiện khớp với dấu đánh dấu được dùng cho Checkbox. (Icac7b)

Sửa lỗi

  • Cập nhật tất cả bản minh hoạ tích hợp để sử dụng đối tượng sửa đổi rotaryScrollable mới. (I25090)

Phiên bản 1.0.0-alpha21

Ngày 17 tháng 4 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha21. Phiên bản 1.0.0-alpha21 bao gồm các thay đổi sau.

  • Bản phát hành này được kích hoạt do một sự cố kỹ thuật trong bản phát hành trước đó, dẫn đến việc thiếu các tệp jar nguồn. Không có cam kết mới nào trong bản phát hành này.

Phiên bản 1.0.0-alpha20

Ngày 3 tháng 4 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha20. Phiên bản 1.0.0-alpha20 bao gồm các thay đổi sau.

Sửa lỗi

  • Chúng tôi đã điều chỉnh các giá trị alpha của trạng thái được nhấn và trạng thái được lấy tiêu điểm của hiệu ứng gợn sóng để tăng độ tương phản. (I59f0a)
  • Chúng tôi đã thêm khoảng cách giữa nhãn chính và nhãn phụ trong Button, ToggleButtonRadioButton, theo những thay đổi mới nhất về kiểu chữ và chiều cao dòng. (I2c0ba)

Phiên bản 1.0.0-alpha19

Ngày 6 tháng 3 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha19. Phiên bản 1.0.0-alpha19 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã thêm TimeText vào thư viện Wear Compose Material3. Thành phần này hiển thị thời gian hiện tại (và trạng thái bổ sung) ở đầu màn hình. API Material3 mới, ngắn gọn giúp tránh trùng lặp giữa nội dung tuyến tính và nội dung cong. (I4d7c3)
  • Chúng tôi đã cập nhật tên tham số từ onSelected thành onSelect cho RadioButton. (I1a971)
  • Mã hoá RadioButtonSplitRadioButton, đồng thời tái cấu trúc các phương thức hiện có để giảm số lượng tra cứu CompositionLocal bằng cách thêm các phiên bản màu được lưu vào bộ nhớ đệm và tạo các phương thức nội bộ của RadioButtonColorsSplitRadioButtonColors. (I02b33)

Phiên bản 1.0.0-alpha18

Ngày 21 tháng 2 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha18. Phiên bản 1.0.0-alpha18 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã tái cấu trúc mẫu mặc định cho CardColors, ToggleButtonColorsSplitToggleButtonColors bằng cách tạo các thực thể được lưu vào bộ nhớ đệm nội bộ và giảm mức sử dụng CompositionLocal. (If3fec)

Phiên bản 1.0.0-alpha17

Ngày 7 tháng 2 năm 2024

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha17. Phiên bản 1.0.0-alpha17 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã cập nhật Button API để sử dụng buttonColors theo mặc định và xoá filledButtonColors trùng lặp. (I4fe3b)
  • Chúng tôi đã tái cấu trúc các mẫu mặc định cho ButtonColors, IconButtonColorsTextButtonColors bằng cách tạo một phiên bản được lưu vào bộ nhớ đệm nội bộ và giảm mức sử dụng CompositionLocal. (I5f51c)
  • Chúng tôi đã loại bỏ chi phí chung của rememberUpdatedState trong các lớp màu dành riêng cho Thành phần và đánh dấu các phương thức truy cập bên trong các lớp màu là nội bộ. (If6571)

Sửa lỗi

  • Chúng tôi đã cập nhật Modifier.minimumInteractiveComponentSize để sử dụng Modifier.node. (Iba6b7)

Phiên bản 1.0.0-alpha16

Ngày 24 tháng 1 năm 2024

Phát hành androidx.wear.compose:compose-material3: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

  • Chúng tôi đã thêm CompactButton. Thành phần này có thể sử dụng cùng màu được tô, màu sắc độ được tô và màu đường viền như Nút.(I05df0)

Thay đổi về API

  • Chúng tôi đã thêm RadioButton/SplitRadioButton làm vùng chứa cho các chế độ điều khiển lựa chọn, chẳng hạn như chế độ điều khiển Radio. Điều này khác với ToggleButton hiện có ở chỗ RadioButton có thể chọn (và hoạt động trong một nhóm lựa chọn) trong khi ToggleButton có thể bật/tắt (và hoạt động độc lập). (I61275)
  • Chúng tôi sẽ xoá LocalContentAlpha khỏi thư viện Wear Compose Material3 để đảm bảo tính nhất quán với thư viện Compose Material3. (I49a0a)
  • Các thành phần Wear Material và Wear Material 3 có MutableInteractionSource trong API của chúng đã được cập nhật để hiện có MutableInteractionSource có 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âng MutableInteractionSource và 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ổ MutableInteractionSource và 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ùng MutableInteractionSource mà 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. (Ib90fc, b/298048146)
  • Thêm API hiệu ứng gợn sóng mới trong các thư viện wear:compose-materialwear:compose-material3 để thay thế rememberRipple không còn được dùng nữa. Đồng thời, thêm CompositionLocal, LocalUseFallbackRippleImplementation tạm thời để các thành phần Material quay lại sử dụng các API rememberRipple/RippleTheme khô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ột RippleTheme tuỳ 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 đã thực hiện một số cải tiến nhỏ đối với HorizontalPageIndicator API và tài liệu của API này. (I60efc)
  • 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ã 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. (Ibc2d6)
  • Cập nhật ToggleButton và API SplitToggleButton để cho phép tuỳ chỉnh màu bị vô hiệu hoá. Ngoài ra, các mã thông báo Material Design hiện được dùng cho các giá trị màu sắc và kiểu chữ. (If087c)
  • Cập nhật màu nền của hình ảnh Nút để sử dụng mã thông báo Material Design. (Iba215)
  • Chúng tôi đã thay đổi các thành phần Checkbox, SwitchRadioButton thành chỉ hiển thị bằng cách xoá tính năng xử lý lượt nhấp. Các thành phần này dự kiến sẽ được dùng trong (Split)ToggleButton để xử lý lượt nhấp, vì vậy, các thành phần này hiện được chỉ định rõ ràng hơn là chỉ dành cho mục đích hiển thị (và không dành cho mục đích sử dụng độc lập trên Wear). (I2322e)

Sửa lỗi

  • Chúng tôi đã thêm mã thông báo cho các giá trị chuyển động của khoảng thời gian và đường cong tăng tốc trong Wear Compose Material 3. (I437cd)
  • Chúng tôi đã khắc phục một lỗi trong ToggleButton, SplitToggleButton, Checkbox, SwitchRadioButton để thông báo về khả năng 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). (Ica281)
  • Chúng tôi đã xoá lớp materialcore cho CompactButton để cải thiện hiệu suất. (7902858)

Phiên bản 1.0.0-alpha15

Ngày 15 tháng 11 năm 2023

Phát hành androidx.wear.compose:compose-material3: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 đã đổi tên cấp độ Cơ bản SwipeToDismissBox thành BasicSwipeToDismissBox. Điều này giúp phân biệt rõ ràng hơn giữa thành phần cấp Foundation và SwipeToDismissBox cấp Material3. 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 cho BasicSwipeToDismissBox. (Ibecfc)

Sửa lỗi

  • Chúng tôi đã xoá lớp material-core cho Nút Material3 để cải thiện hiệu suất. (I55555)

Phiên bản 1.0.0-alpha14

Ngày 18 tháng 10 năm 2023

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha14. Phiên bản 1.0.0-alpha14 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã xoá tham số indicatorStyle khỏi HorizontalPageIndicator Material3. Thay vào đó, tham số này sẽ tuân theo hình dạng màn hình thiết bị (đường thẳng hoặc đường tròn). (I83728)
  • Chúng tôi đã tách các màu cho SplitToggleButton khỏi các màu cho ToggleButton bằng cách thêm một lớp SplitToggleButtonColors mới. (I78bee)

Phiên bản 1.0.0-alpha13

Ngày 4 tháng 10 năm 2023

Phát hành androidx.wear.compose:compose-material3: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 đã thêm một trường Phụ đề (không bắt buộc) vào TitleCard. (Ifc45a)
  • Chúng tôi đã thêm mã màu Material Design cho TextButton. (I769dc)

Phiên bản 1.0.0-alpha12

Ngày 20 tháng 9 năm 2023

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha12. Phiên bản 1.0.0-alpha12 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã cập nhật IconButton để sử dụng mã thông báo Material Design. (I3f137)
  • Chúng tôi đã cập nhật IconToggleButton để sử dụng mã thông báo Material Design. (I7d263)
  • Chúng tôi đã công khai các hàm khởi tạo của CheckboxColors, RadioButtonColors, SwitchColors. (I82b73)

Phiên bản 1.0.0-alpha11

Ngày 6 tháng 9 năm 2023

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha11. Phiên bản 1.0.0-alpha11 bao gồm các thay đổi sau.

Sửa lỗi

  • Chúng tôi đã cập nhật kiểu chữ cho Thẻ Material3 thành TitleMedium. (I597bd)
  • Chúng tôi đã cập nhật kiểu chữ và căn chỉnh cho ListHeaderListSubheader của Material3. (Ib5ceb)

Phiên bản 1.0.0-alpha10

Ngày 23 tháng 8 năm 2023

Phát hành androidx.wear.compose:compose-material3: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 HorizontalPageIndicator vào thư viện Wear Material3. (Ifee99)

Thay đổi về API

  • Cập nhật mã Nút để sử dụng mã thiết kế Material3. (I92fe4)
  • Khai báo Wear Material 3 Stepper và Slider API là thử nghiệm vì thông tin chi tiết về giao diện người dùng vẫn đang được hoàn thiện. (I84d54)
  • Chúng tôi đã xoá các kích thước ExtraSmall khỏi TextButtonTextToggleButton dạng tròn vì kích thước đó chỉ áp dụng cho IconButton. (Ibc7d5)

Sửa lỗi

  • Chúng tôi đã cập nhật hướng dẫn về kiểu chữ cho TextToggleButton để sử dụng LabelLarge cho LargeButtonSize (Ib10fa)
  • Chúng tôi đã cập nhật hướng dẫn về kiểu chữ cho TextButton để sử dụng LabelLarge cho LargeButtonSize (I8f3a7)
  • Chúng tôi đã đặt đích chạm tối thiểu của Thẻ là 48 dp để hỗ trợ tiếp cận. (Ieb9b1)
  • Thêm bản minh hoạ AppCard có hình ảnh, xoá bản minh hoạ AppCard có nền (Id735f)
  • 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.0.0-alpha09

Ngày 9 tháng 8 năm 2023

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha09. Phiên bản 1.0.0-alpha09 bao gồm các thay đổi sau.

Tính năng mới

  • Chúng tôi đã thêm ToggleButton cho material3 (I6bed6)

Thay đổi về API

  • Chúng tôi đã bật chú thích FloatRange là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)
  • Chúng tôi đã cập nhật kiểu chữ cho Wear Material3 để tuân thủ các nguyên tắc mới nhất của Material3. (I1bad6)

Sửa lỗi

  • Chúng tôi đã cập nhật màu sắc cho Button, IconButtonTextButton theo thiết kế Material3. (Ib2495)
  • 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ị tắt. (Ib25bf)

Phiên bản 1.0.0-alpha08

Ngày 26 tháng 7 năm 2023

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha08. Phiên bản 1.0.0-alpha08 bao gồm các thay đổi sau.

Tính năng mới

  • Chúng tôi đã thêm các chế độ kiểm soát lựa chọn sau đây cho Material3 – Switch, Checkbox, RadioButton. (Ib918c)
  • Chúng tôi đã thêm IconToggleButtonTextToggleButton vào Material3, đây là một nút bật/tắt hình tròn có một khe cho biểu tượng và văn bản tương ứng. Đối với các kích thước khác nhau của ToggleButton, bạn nên sử dụng Modifier.touchTargetAwareSize với các kích thước được cung cấp trong các nút bật/tắt tương ứng. (I9f015)
  • Chúng tôi đã thêm ListHeaderListSubheader vào các thành phần Material3. (Ibaefe)
  • Chúng tôi đã thêm SwipeToDismissBox Material3. SwipeToDismissBox này gọi Foundation SwipeToDismissBox mới và cung cấp các giá trị màu mặc định từ giao diện của Foundation. (I275fb)
  • Chúng tôi đã thêm InlineSlider Material3 vào Wear Compose. Thành phần này 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ị. InlineSlider là lựa chọn lý tưởng để điều chỉnh các chế độ cài đặt như âm lượng hoặc độ sáng. (I7085f)

Thay đổi về API

  • Chúng tôi đã cập nhật Hình dạng trong giao diện Material 3 trên Wear để sử dụng RoundedCornerShape thay vì Hình dạng. (Idb133)
  • Chúng tôi đã tạo các hằng số chiều cao cho Nút công khai (Idbfde)
  • 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ập nhật InlineSliderColors trong Wear Compose Material 3 để có hàm khởi tạo công khai và các thuộc tính công khai. (I6b632)
  • Chúng tôi đã cập nhật tất cả các lớp màu trong Wear Compose Material 3 để có hàm khởi tạo công khai và thuộc tính công khai. (I17702)
  • Chúng tôi đã công khai các hằng số khoảng đệm dọc và ngang của Nút. (Ieeaf7)

Sửa lỗi

  • Giờ đây, nút sẽ đ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)
  • Chúng tôi đã cập nhật một số bản minh hoạ Nút để giải quyết các vấn đề về khả năng tiếp cận. (I61ce9)
  • StepperInlineSlider hiện hỗ trợ các lần nhấp lặp lại khi nhấn và giữ để bạn có thể nhanh chóng tăng/giảm giá trị của StepperInlineSlider bằng cách giữ nút + hoặc – (I27359)

Phiên bản 1.0.0-alpha07

Ngày 21 tháng 6 năm 2023

Phát hành androidx.wear.compose:compose-material3: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

  • Chúng tôi đã thêm thành phần Stepper vào thư viện Compose cho Wear OS Material 3. Điều này tương tự như phiên bản Material trước đó, nhưng theo mặc định sẽ bỏ qua ngữ nghĩa phạm vi theo ý kiến phản hồi của nhà phát triển. Chúng tôi cung cấp Modifier.rangeSemantics các trường hợp cần có ngữ nghĩa phạm vi. (Ic39fd)
  • Chúng tôi đã thêm curvedText vào thư viện Compose cho Wear OS Material 3. (Ia8ae3)

Sửa lỗi

  • Chúng tôi đã cập nhật wear.compose.foundation để trở thành một phần phụ thuộc API của wear.compose.material3 (I72004, b/285404743)

Phiên bản 1.0.0-alpha06

Ngày 7 tháng 6 năm 2023

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha06. Phiên bản 1.0.0-alpha06 bao gồm các thay đổi sau.

Sửa lỗi

  • Chúng tôi đã cập nhật TextButton để sử dụng hàm tiện ích toDisabledColor cho các giá trị alpha bị vô hiệu hoá chính xác. (I814c8)

Phiên bản 1.0.0-alpha05

Ngày 24 tháng 5 năm 2023

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha05. Phiên bản 1.0.0-alpha05 bao gồm các thay đổi sau.

Tính năng mới

  • Chúng tôi đã thêm TextButton vào Material3, đây là một nút tròn có một khe duy nhất cho văn bản. Đối với các kích thước khác nhau của TextButton, bạn nên sử dụng Modifier.touchTargetAwareSizeExtraSmallButtonSize, SmallButtonSize, DefaultButtonSizeLargeButtonSizeIcon có trong TextButtonDefaults. TextButton mặc định không có đường viền và có nền trong suốt cho các thao tác có mức độ nhấn mạnh thấp. Đối với những thao tác cần được nhấn mạnh, hãy sử dụng filledTextButtonColors; đối với những thao tác cần được nhấn mạnh vừa phải, hãy sử dụng TextButton có đường viền và đặt đường viền thành ButtonDefaults.outlinedButtonBorder; đối với những thao tác cần được nhấn mạnh ở mức trung bình giữa có đường viền và được tô màu nền, hãy sử dụng filledTonalTextButtonColors. (I667e4)
  • Chúng tôi đã thêm Card, OutlinedCard, AppCardTitleCard vào thư viện Wear Compose Material3. AppCardTitleCard cũng có thể có giao diện dạng đường viền bằng cách dùng CardDefaults.outlinedCardColorsCardDefaults.outlinedCardBorder(I80e72)

Thay đổi về API

  • Chúng tôi đã di chuyển tham số nhãn Nút xuống cuối để hỗ trợ cú pháp có lambda ở cuối và xoá tham số vai trò (vì tham số này có thể bị ghi đè bằng Modifier.semantics). Giờ đây, các hàm khởi tạo ButtonColors là công khai. (Ie1b6d)

Phiên bản 1.0.0-alpha04

Ngày 10 tháng 5 năm 2023

Phát hành androidx.wear.compose:compose-material3: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

  • Chúng tôi đã thêm IconButton vào Material 3, đây là một nút tròn có một khe duy nhất cho biểu tượng/hình ảnh. Có 4 biến thể: IconButton, FilledIconButton, FilledTonalIconButtonOutlinedIconButton. Đối với các kích thước khác nhau của IconButton, bạn nên sử dụng Modifier.touchTargetAwareSizeExtraSmallButtonSize, SmallButtonSize, DefaultButtonSizeLargeButtonSizeIcon có trong IconButtonDefaults. Chúng tôi cũng cung cấp IconButtonDefaults.iconSizeFor để xác định kích thước biểu tượng được đề xuất cho một kích thước nút nhất định. (I721d4)

Phiên bản 1.0.0-alpha03

Ngày 19 tháng 4 năm 2023

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha03. Phiên bản 1.0.0-alpha03 bao gồm các thay đổi sau.

Thay đổi về API

  • Chúng tôi đã thêm thành phần Nút Material 3 – đây là nút có hình dạng như sân vận động và trước đây có tên là Chip trong thư viện Wear Compose Material (đã đổi tên thành Nút để nhất quán với thư viện Compose Material 3). Nút mặc định có nền được tô và có các biến thể nút cho FilledTonal (nền bị tắt tiếng), Outlined (trong suốt với đường viền mỏng) và Child (nền trong suốt và không có đường viền, dùng cho các thao tác bổ sung có mức độ nổi bật thấp nhất). Các nút tròn cho nội dung biểu tượng và văn bản đơn giản sẽ xuất hiện trong một bản phát hành trong tương lai.(Ia6942)

Phiên bản 1.0.0-alpha02

Ngày 5 tháng 4 năm 2023

Phát hành androidx.wear.compose:compose-material3:1.0.0-alpha02. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.

Sửa lỗi

  • Chúng tôi đã thêm DefaultTextStyle vào Wear Compose Material 3. DefaultTextStyle này sẽ mặc định PlatformTextStyle.includeFontPadding là true (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 (xem phần Khắc phục khoảng đệm phông chữ trong Compose cho nền). (I7e461)

Phiên bản 1.0.0-alpha01

Ngày 22 tháng 3 năm 2023

Phát hành androidx.wear.compose:compose-material3: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

  • Material 3 là phiên bản cải tiến tiếp theo của Material Design, bao gồm cả giao diện được cập nhật và các thành phần được thiết kế lại. Material 3 trên Wear Compose được thiết kế để nhất quán với thư viện Material 3 Compose trên Android. 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 Material – định cấu hình bảng phối màu, kiểu chữ và hình dạng nhất quán giữa các thành phần trong thư viện. Giao diện Material3 có các màu đã được sửa đổi để hỗ trợ độ tương phản dễ tiếp cận. (I84005)
    • Văn bản/Biểu tượng – các khối xây dựng cho ứng dụng Wear Compose (I8e06a)
  • Chúng tôi sẽ tiếp tục phát triển Wear Material (androidx.wear.compose:compose-material) và Wear Material 3 (androidx.wear.compose:compose-material3) song song. Các bản phát hành material3 trong tương lai sẽ mở rộng bộ tiện ích để bao gồm các thành phần quen thuộc khác của Compose cho Wear OS, chẳng hạn như nút, bộ chọn và thanh trượt.

  • Thư viện Wear Material và Wear Material 3 loại trừ lẫn nhau và không được kết hợp trong cùng một ứng dụng, chủ yếu là do chúng tham chiếu đến các giao diện khác nhau, dẫn đến sự không nhất quán không mong muốn.