Wear Compose Material 3

  
Viết các ứng dụng sử dụng công cụ 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 4 tháng 6 năm 2025 - - 1.5.0-beta03 -

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-beta03"

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

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

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-beta03")
    
    // 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-beta03")

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

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

    // 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-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

  • OpenOnPhoneDialog hiện chỉ thông báo văn bản của thông báo 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 các 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 á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. Bây giờ, 2 giá trị đầu tiên được đảo ngược và chúng ta áp dụng bất kỳ đối tượng sửa đổi nào được truyền vào giữa các giá trị đó, do đó, giá trị 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 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)
  • Thêm RevealState.Saver để dùng khi 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. Theo mặc định, hàm rememberRevealState hiện sử dụng Trình tiết kiệm này. (Ie0ecb)
  • Các nút hành động chính và phụ SwipeToReveal phải mặc định là ButtonDefault.Height (khắc phục lỗi các nút này đang 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 tương tác gần đây nhất, khi thực hiện cử chỉ vuốt sang phải. (Ia8450)
  • SwipeToReveal đã được thay đổi để đặt trạng thái Revealing khi vị trí kết thúc của thao tác vuốt nằm giữa neo hiển thị và neo đã hiển thị, đồng thời gần với 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 RTL (I4533c)
  • TransformingLazyColumn hiện đổi kích thước các mục chính xác khi xoá mục dưới cùng (Idacab)
  • TransformingLazyColumn hiện chỉ thực hiện một lượt đo lường, giúp cải thiện hiệu suất bằng cách giảm thời gian kết xuất 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 thư viện foundation, material và material3. (I53f06)
  • Khắc phục lỗi trong TransformingLazyColumn, trong đó các mục thay đổi kích thước khi mục dưới cùng bị xoá. (Idacab)
  • Khắc phục lỗi với TransformingLazyColumn, khi danh sách bị treo ở đầu hoặc cuối danh sách. (I49d00)
  • OpenOnPhoneDialog trong TalkBack phải 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 lỗi trong SwipeToReveal sẽ báo cáo neo không chính xác trong RevealState.currentValue khi hasPartiallyRevealedState được đặt thành false. (I9c7cf)
  • Các nút huỷ SwipeToReveal hiện là ButtonDefaults.Height theo mặc định. (I1f6c8)
  • Cải thiện hiệu suất của BasicSwipeToDismissBox bằng cách loại bỏ việc sử dụng Canvas để vẽ scrim. (I68f2c)
  • Khắc phục lỗi hỗ trợ tiếp cận trong Thanh trượt, trong đó tỷ lệ phần trăm được công bố không khớp với giá trị sau khi cập nhật (I91146)
  • Khắc phục lỗi khi triển khai placeholderShimmer. (Iee39b
  • Cải thiện hiệu suất TransformingLazyColumn bằng cách tối ưu hoá 30% phép tính ScrollProgress. (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 for 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 phần đượ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ế hình ảnh mới trong ứng dụng và hưởng lợi từ 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.
  • Dynamic Color Theming (Tạo giao diện màu động) tự động tạo bảng phối màu cho ứng dụng của bạn để khớp với màu 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ể tạo ảnh động khi 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 phần cuối màn hình.
  • Cấu trúc – 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 nút bật/tắt, trong khi RadioButton là nút lựa chọn có sẵn (cũng cung cấp các biến thể "Phân tách" của nút bật/tắt và nút lựa chọn).
  • ButtonGroup – triể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.
  • Các biến thể AlertDialog hỗ trợ nút ok/cancel hoặc EdgeButton.
  • ConfirmationDialog có sẵn để hiển thị thông báo có thời gian chờ, hỗ trợ các ảnh động đặc biệt cho các biến thể thành công, không thành công và mở trên điện thoại.
  • Bộ chọn – Các biến thể TimePickerDatePicker được hỗ trợ cũng như các thành phần Bộ chọn và PickerGroup để tạo màn hình bộ chọn của riêng bạn.
  • ProgressIndicators – hỗ trợ chỉ báo tiến trình vòng tròn và tuyến tính (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 TitleCard cung cấp bố cục cụ thể cho thẻ có tiêu đề, thời gian, phụ đề hoặc khe nội dung. Bạn cũng có thể đặt nền hình ảnh cho TitleCard để củng cố ý nghĩa của thông tin trong thẻ.
  • Trình chuyển trang – các thành phần HorizontalPagerScaffold, VerticalPagerScaffoldAnimatedPage điều phối ảnh động HorizontalPageIndicatorVerticalPagerIndicator. Phát hành HorizontalPagerVerticalPager trong thư viện Wear Compose Foundation.
  • Phần giữ chỗ – vẽ một hình dạng khung xương 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à Bước – cả thanh trượt và bước đề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 Bước là một thành phần toàn màn hình thường được ghép nối với StepperLevelIndicator.
  • SwipeToReveal – dùng để thêm các thao tác bổ sung 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 bao gồm các thành phần mới sau:

  • TransformingLazyColumn – danh sách cuộn theo chiều dọc, tải lười hỗ trợ hoạt ảnh điều chỉnh theo tỷ lệ và biến đổi
  • Nhóm tiêu điểm phân cấp – dùng để chú thích các thành phần kết hợp trong ứng dụng, theo dõi phần đang hoạt động của thành phần kết hợp và điều phối tiêu điểm.
  • Trình chuyển trang – 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 các tính năng nâng cao 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 Hierarchical Focus – đổi tên Modifier.hierarchicalFocus thành Modifier.hierarchicalFocusGroup và xoá tham số gọi lại; xoá tình trạng quá tải 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 màn hình nào đang hoạt động. (I5ff7c).
  • Ngừng sử dụng SwipeToReveal từ Wear Compose Foundation để chuyển sang API SwipeToReveal trong Wear Compose Material và Wear Compose Material3. Vui lòng thay thế các lệnh nhập SwipeToReveal của Wear Foundation bằng các lệnh 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 việc nhập các 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ì neo; xoá các hàm createRevealAnchors, neo và bidirectionalAnchors; đổi tên các hàm SwipeToRevealScope primaryAction, secondaryAction, undoPrimaryActionundoSecondaryAction thành PrimaryActionButton, SecondaryActionButton, UndoActionButton và 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ì mặc định là chiều cao mặc định của Nút và chiều cao lớn hơn có thể được đặt bằng cách sử dụng đối tượng sửa đổi; xoá SmallActionButtonHeight khỏi SwipeToRevealDefaults; đặt tham số giá trị trong hàm khởi tạo RevealValueRevealDirection ở chế độ riêng tư. (I465ce).

Sửa lỗi

  • Khắc phục việc xử lý EdgeButton của ScreenScaffold để sau khi một mục TransformingLazyColumn bị xoá, EdgeButton sẽ được tạo ảnh động vào đúng vị trí. (I6d366).
  • Cập nhật các phần phụ thuộc Wear Compose trên 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).
  • Khắc phục lỗi SwipeDismissableNavHost – tiêu điểm không chuyển đổi chính xác sau khi vuốt ngược, khiến phương thức nhập dữ liệu 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).
  • Sửa đổi tài liệu cho Hierarchical Focus API (Idf2ff).
  • Cập nhật tài liệu về Nút và Thẻ để nêu cách containerPainterdisabledContainerPainter ghi đè containerColordisabledContainerColor (I4a453).
  • Huỷ thay đổi đối với TimeText trong bản phát hành trước đó, trong đó đã chuyển BroadcastReceiver sang luồng worker vì việc này gây ra vấn đề cho các ứng dụng quản lý luồng của riêng chúng trong quá trình điều hướng. (I34d02).
  • Cập nhật các mẫu Picker để xoá các lệnh gọi nhớ không cần thiết và thay vào đó, hãy sử dụng rememberUpdatedState trong Picker để 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. (I26194).
  • ListHeaderListSubHeader hiện căn chỉnh văn bản theo mặc định thành căn giữa và căn đầu. (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 chính 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 cực nhỏ, 2 cho nhỏ và trung bình, và 3 cho lớn. (Ie35f6).
  • Đơn giản hoá LocalReduceMotion để chỉ đăng ký trình quan sát một lần, 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 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 theo tỷ lệ chính xác khi EdgeButton đạt được chiều cao đầy đủ. (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. Sử dụng tổ hợp đối tượng sửa đổi transformedHeightgraphicsLayer nếu bạn cần có cùng chức năng. (Ie181d)
  • Thay thế các thành phần kết hợp ImageButtonImageCard bằng các phương thức 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ẽ lắc trong ả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 ở 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 "Kiểm tra điện thoại" mặc định không bị cắt với 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ự đối với Thẻ. Các trình vẽ bị xoá khỏi ButtonColorsCardColors. (I8c6a1)
  • Cập nhật phần giữ chỗ để đơn giản hoá API. Hiện tại, chúng tôi cung cấp hai đố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 nạ lên nội dung chưa tải (Iaee7a)

Sửa lỗi

  • Tích hợp tính năng cuộn xuống dưới cùng vào ScrollIndicator. (Icfb7f)
  • Giải quyết nền trống và thiếu hộp thoại 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 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 của AlertDialog hiện được giảm khi cung cấp biểu tượng – điều này giúp sử dụng kích thước màn hình có sẵn một cách hiệu quả nhất. (Ief06c)
  • PagerScaffoldDefaults.FadeOutAnimation đổi tên thành PagerScaffoldDefaults.FadeOutAnimationSpec Đổi tên tham số trang trên AnimatedPage thành pageIndex. (I701f2)
  • Cập nhật cách đặt tên cho SurfaceTransformation của TransformingLazyColumnapplyTransformation được chia thành applyContainerTransformationapplyContentTransformation, đồng thời đổi tên createBackgroundPainter thành createContainerPainter. Cập nhật thêm về cách đặt tên cho TransformationSpecResponsiveTransformationSpec. (I1c534)
  • AppScaffold backgroundColor đổi tên thành containerColor. (I4e63f)

Sửa lỗi

  • Khắc phục vấn đề trong FadingExpandingLabel, trong đó văn bản không phải lúc nào cũng mở rộng chính xác. (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 để ả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)
  • Tất cả các tỷ lệ kiểu chữ đều được cập nhật để có chữ số tỷ lệ theo mặc định, vì đó được xem là trường hợp sử dụng thường xuyên nhất và việc đặt mặc định thành 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 các 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 của bạn". (I00a3f)
  • Cập nhật trọng số cho ArcLargeArcMedium từ 600 thành 599 để giải quyết vấn đề trọng số 600 được coi là in đậm (I2a51d)
  • Cập nhật khoảng đệm SwipeToReveal giữa nội dung và nút hành động, cũng như khoảng đệm giữa biểu tượng và văn bản của nút hành động. (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 sử dụng cùng với Wear Foundation Pager để đạt được hành vi PagerScaffold M3 trước đó. (Xem các mẫu đã cập nhật). (Ia4724)
  • Cập nhật PagerState, xoá PagerState của Compose Foundation 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)
  • Các tham số góc quét LevelIndicator hiện được chú thích bằng FloatRange(0, 360) (I7e636)
  • Chúng tôi đã thêm CurvedModifier.clearAndSetSemantics để cung cấp phương thức tắt ngữ nghĩa cong. CurvedText tiếp tục đặt 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 tham số màu nền và màu nội dung mặc định vào AppScaffold. (I56652)
  • Tính năng xử lý mặc định của HorizontalPager đối với cử chỉ vuốt đã được đổi tên thành PagerDefaults.gestureInclusion. Hành vi mặc định hiện chỉ bỏ qua các cử chỉ vuốt bắt đầu ở cạnh trái của trang đầu tiên và chỉ khi TalkBack bị tắt. Trong các trường hợp khác, hành vi mặc định là trình phân trang sẽ không bỏ qua các cử chỉ vuốt, 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 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 nhiều phép biến đổi nội dung và nền khi được sử 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 các mục đó, 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 API Wear Compose Material3 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. Hành vi mặc định của SwipeToReveal’ trong Material3 hiện 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 bằng hoạt ảnh theo từng dòng. (Ic60fa)
  • TransformingLazyColumn hiện sử dụng contentPadding trống theo mặc định thay vì đặt mục đầu tiên và cuối cùng vào giữa. (I77ab7)
  • Xoá rememberRevealState của SwipeToReveal 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ợ ScrollIndicatorPageIndicator không tròn đã bị xoá khỏi Material3. Tính năng hỗ trợ màn hình vuông cũng không còn là một phần của 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 dùng trong ConfirmationDialogDefaultsOpenOnPhoneDialogDefaults đã được cập nhật để sử 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 1.8sp. (Ic9ced)
  • Card, ListHeader, RadioButton, CheckboxButton, SwitchButton không còn ràng buộc 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 TimeTextScrollIndicator mặc định để thêm nhiều tông màu xám hơn, vì việc sử dụng OnBackground (màu trắng) trực tiếp mang lại quá nhiều trọng lượng hình ảnh khi cạnh tranh với nội dung khác trên màn hình 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 của 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ệ nền của 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 tiêu đề vào DatePickerTimePicker trong TalkBack để người dùng được thông báo di chuyển để đặt ngày/giờ. (Id738d)
  • AnimatedText hiện tuân theo chế độ cài đặt giảm chuyển động. (Ib6578)
  • Tính năng tối ưu hoá để sử dụng AppScaffold cho nội dung Hộp thoại hiển thị đã được cải thiện để 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 trực tiếp thêm ngữ nghĩa thao tác tuỳ chỉnh vào nội dung của thành phần SwipeToReveal. (Ia67f3)
  • Chúng tôi đã xoá các tiền tố "Button" (Nút) khỏi kích thước, kiểu văn bản và các hàm màu trong IconToggleButtonDefaultsTextToggleButtonDefaults (I5471d)
  • 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 cho việc thêm bộ chọn vào PickerGroup. Chúng tôi cũng đã cập nhật loại tham số "content" (nội dung) PickerGroup 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 đoạn và thêm tiền tố Stepper vào các phương thức nạp chồng đó có chứa 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 các phép biến đổi chính xác đang diễn 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 đối với 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 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 các hành động khẩn cấp như cảnh báo an toàn, lớp phủ hộp thoại không thành công 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 chồng hộp thoại lên nội dung màn hình khác (I1b9a4)
  • Giảm khoảng đệm dọc nội bộ của EdgeButton. (I1a5bb)
  • Chúng tôi đã thêm ngữ nghĩa Nút vào 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 ta đã 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ồ. Điều này là bắt buộc vì các chữ cái theo chiều kim đồng hồ mở rộng từ đường cơ sở, trong khi các chữ cái ngược chiều kim đồng hồ mở rộng vào trong (vì vậy, cần có khoảng cách 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 hình dạng vào bộ nhớ đệm để giảm số lượt 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 sẽ cải tiến 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. Tính năng hỗ trợ màn hình không phải hình tròn cũng không còn là một phần của 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à sẽ nhận InteractionSource thay vì MutableInteractionSource vì không cần phải thay đổi đối tượng này. 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 chữ cái viết thường vì đây là 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 rằng 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ố Hộp thoại show thành hiển thị để đảm bảo tính nhất quán với các bản cập nhật gần đây khác đối với hộp thoại. (I10074)
  • IconButton đổi tên disabledImageOpacity thành DisabledImageOpacity. (I5f94a)

Sửa lỗi

  • Chúng tôi đã khắc phục lỗi trong ảnh động EdgeButton để sử dụng kích thước chính xác trong mỗi khung (Id3b58)
  • Khắc phục vấn đề animateContentSize không hoạt động với Button. (Ib18a0)
  • Chúng tôi đã thay đổi tỷ lệ 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)
  • 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 từ 225 dp trở lên là màn hình lớn) (I36474)
  • Khắc phục một lỗi nhỏ trong việc định vị 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ả thư viện Wear Compose lên chế độ "API rõ ràng". (Iebf9f)
  • Chúng tôi đã cập nhật API ScreenScaffoldEdgeButton để bạn có thể chỉ định khoảng đệm nội dung trên các màn hình có EdgeButton dễ dàng hơn. Trong API mới, size của EdgeButton chỉ được truyền đến EdgeButtonScreenScaffold sẽ 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 ArcProgressIndicator mặc định 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 API Xác nhận để phản ánh cách sử dụng API này dưới dạng hộp thoại. Thành phần kết hợp hiện được gọi là ConfirmationDialog, với các nội dung cập nhật liên quan đến việc đặt tên màu và lớp 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 các trường hợp mà nhà phát triển cần tuỳ chỉnh ảnh động hộp thoại mở đầu/kết thúc. (Iaeb33)
  • Chúng tôi đã cập nhật CircularProgressIndicatorContent thành CircularProgressIndicatorStatic (biến thể không có ảnh động của CircularProgressIndicator) để có thể sử dụng biến thể này nhằm tạo CircularProgressIndicator bằng ảnh động tuỳ chỉnh. (I1346f)
  • Chúng tôi đã khắc phục thứ tự tham số trên ArcProgressIndicator, đặt tham số đối tượng sửa đổi lên trước (I4656a)
  • Cải thiện API SwipeToReveal để nhận tham số khe văn bản cho nhãn của các hành động (ngoại trừ hành động phụ) và xoá các tham số nhãn khỏi thao tác huỷ (I5b3db)

Sửa lỗi

  • Khắc phục lỗi khi tính năng haptics LongPress được kích hoạt nhiều lần trong Button, Card, IconButton, TextButton (Ia8b0f)
  • Thay đổi đối với trải nghiệm người dùng của AlertDialog – trên màn hình lớn, nút xác nhận và đóng hiện nhỏ hơn. Khoảng cách cũng được tăng lên bên dưới các nút xác nhận và đóng. (I4f066)
  • Chúng tôi đã thay đổi thông số kỹ thuật ảnh động của nhãn nút hành động của thành phần SwipeToReveal. (Ib87fb)
  • Thay đổi SwipeToReveal để mở rộng vùng chứa cùng lúc với việc hiển thị văn bản. (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 quá ngưỡng mà hành động chính được thực hiện. (I23efe)
  • Theo mặc định, chúng tôi đã cập nhật SwipeToReveal để hiển thị dấu ba chấm khi văn bản tràn vùng chứa, cho các thao tác chính và huỷ. (I71f5a)
  • Khắc phục vấn đề gây ra hiện tượng 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)
  • Hộp thoại hiện đặt lại tỷ lệ 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ể đã bị bỏ ở 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 Nút chuyển (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ó hai tham số hình dạng khác nhau là uncheckedPressedcheckedPressed (I85dbd)
  • Các tuỳ chọn tháng/ngày không hợp lệ hiện xuất hiện trong DatePicker, với invalidPickerContentColor mới, khi sử dụng minDate hoặc maxDate. (If4541)
  • Chúng tôi đã cập nhật API Stepper để cung cấp các khe increaseIcondecreaseIcon – nội dung cho các khe này có thể được tạo 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 cung cấp 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 phải sử dụng ButtonDefaults.SmallIconSize = 24.dp, còn CompactButton chứa cả biểu tượng và văn bản phải sử dụng ButtonDefaults.ExtraSmallIconSize = 20.dp. Bạn nên gói nội dung của CompactButton (thay vì lấp đầy chiều rộng tối đa) và các mẫu đã được cập nhật để hiển thị điều đó. (I0582c)
  • Chúng tôi đã thêm EdgeButtonDefaults với kích thước biểu tượng được đề xuất cho 4 EdgeButtonSizes khác nhau. Ngoài ra, hãy cập nhật bố cục EdgeButton để khoảng đệm dưới cùng lớn hơn một chút so với khoảng đệm trên cùng, 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 để cung cấp nội dung hình ảnh 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 hình ảnh của CircularProgressIndicator mà không cần ảnh động. (Ie33d4)
  • TransformingLazyColumn mới cung cấp thành phần cục bộ LocalTransformingLazyColumnItemScopeCard, ButtonListHeader hiện sử dụng để tự động biến đổi khi được đặt bên trong TransformingLazyColumn. Phương thức gọi có thể tắt tính năng tự động biến đổi bằng cách sử dụ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 lỗi để tuân thủ alpha hiện có trên nền cho TimeText (I1eb60)
  • Theo mặc định, chúng tôi đã đặt TextMotion thành Animated trong kiểu chữ để tránh hiện tượng văn bản bị giật do chụp nhanh các ký tự chữ cái vào ranh giới pixel trong các thao tác điều chỉnh theo tỷ lệ. (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 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 đề ảnh động nút tròn cho các thao tác nhấn ngắn (trước đây, không phải lúc nào cũng quan sát thấy thời lượng ảnh động tối thiểu). (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 vị trí ScrollIndicator khi ScalingLazyColumn được sử 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 cho các nút điều khiển bật/tắt trên CheckboxButtonSwitchButton. (I39817)
  • Chúng tôi đã sửa vị trí ScrollIndicator trong LazyColumnScalingLazyColumn bằng ContentPadding. (I2bc51)
  • Chúng tôi đã khắc phục 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 bật tính năng giảm chuyển động (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 hơn 100%. (I47135)
  • Chúng tôi đã khắc phục lỗi EdgeButton có thể được vẽ với hình dạng không chính xác trong các thành phần Pager (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 không còn cần thiết nữa. Hành vi mới là để TimeText vẫn ở vị trí cũ cho cả chế độ phân trang theo chiều ngang và chiều dọc. (I71767)
  • LocalHapticFeedback hiện cung cấp phương thức triển khai HapticFeedback mặc định khi API Rung cho biết rằng tính năng haptics được hỗ trợ. Các phần sau đã đượ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ữ trong Wear Compose như Button, IconButton, TextButtonCard hiện thực hiện phản hồi xúc giác LONG_PRESS khi đã cung cấp trình xử lý nhấp và giữ. (I5083d)

Sửa lỗi

  • Chúng tôi đã cập nhật đề xuất về Xác nhận. (I04bff)
  • 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)
  • Thêm chuyển động mới cho hộp thoại OpenOnPhone. (I1e10a)
  • Chúng tôi đã khắc phục lỗi trong LevelIndicator để hiện 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 ảnh độ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 trên chỉ báo tiến trình vòng 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 để có thể thêm 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 chế độ 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 ảnh động 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 làm 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 ảnh động tối thiểu cho IconToggleButtonTextToggleButton khi nhấp (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 tuỳ 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 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à điều phối giữa thành phần chỉ báo trang và văn bản thời gian. (Iff7d0)
  • Chúng tôi đã thêm tính năng hỗ trợ xoay vào HorizontalPagerScaffoldVerticalPagerScaffold, cho phép người dùng điều hướng máy nhắn tin 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 các Lược đồ chuyển động 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 Stepper theo 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/Bỏ qua và nội dung còn lại từ 8dp thành 12dp theo thông số kỹ thuật về trải nghiệm người dùng (Ie55f0)
  • Chúng tôi đã cập nhật độ mờ 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)
  • AlertDialog hiện hỗ trợ tính năng bỏ qua nút dưới cùng mặc định khỏi biến thể ngăn xếp nút, đối với các bố cục tuỳ chỉnh không bắt buộc phải có 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ợ vuốt hai chiều trong SwipeToReveal, trong những trường hợp hiếm hoi mà màn hình hiện tại không hỗ trợ thao tác vuốt để đóng. Chế độ mặc định vẫn là chỉ vuốt để hiển thị khi vuốt từ phải sang trái và 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 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à mã thông báo) vốn là mã riêng tư cho các 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 hình tròn được 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 Slider. (Ic3eec)

Sửa lỗi

  • Chúng tôi đã cập nhật ảnh động biểu tượng openOnPhone (I66f85)
  • Chúng tôi hiện đ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 vòng tròn không xác định. (I427a7)
  • Chúng tôi đã thêm tính năng hỗ trợ tràn tiến trình (>100% tiến trình) cho cả CircularProgressIndicatorSegmentedCircularProgressIndicator. Khi tiến trình vượt quá 1.0, tiến trình này sẽ được biểu thị bằng màu overflowTrack mới. (Iaaa3d)
  • IconToggleButtonTextToggleButton tròn hiện hỗ trợ một biến thể ảnh động hình dạng mới, trong đó các hình dạng khác nhau thể hiện trạng thái đã đánh dấu, chưa đánh dấu và đã nhấn. Biến thể hình dạng ảnh động trước đó cho trạng thái vừa nhấn vẫn được hỗ trợ. (I29f03)
  • Chúng tôi đã xoá tính năng hỗ trợ sử dụng EdgeButton với Column do cần chỉ định rõ chiều cao EdgeButton trong ScreenScaffold. (Ie353d)
  • Chúng tôi đã thêm tính năng hỗ trợ cho LazyColumn Wear Compose bằng ScreenScaffold (và thêm cách 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 LocalTextConfiguration cục bộ để 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 một loại tỷ lệ phông chữ bổ sung, dành riêng cho các chuỗi văn bản tiêu đề ngắn ở đầu hoặc cuối 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à rất lớn được đề xuất cũng như khoảng đệm nội dung. (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ơ sở để căn giữa theo chiều dọc nhằm đả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 giao thức Motion vào giao diện Material3. Các thành phần trong thư viện sẽ sử dụng thông tin này để áp dụng các thông số kỹ thuật của ả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 lớp và hiệu ứng chuyển đổi của TimeTextScrollIndicator. AppScaffold cung cấp cấp cao nhất của các thành phần Scaffold nằm trên tất cả màn hình. Do đó, việc thêm TimeText vào AppScaffold cho phép nó giữ nguyên vị trí trong khi vuốt giữa các màn hình. Màn hình có thể tự ghi đè hoặc ẩn văn bản thời gian. ScreenScaffold cung cấp một khe cho ScrollIndicator và tự động tạo ảnh độ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ế Material3 mới. Thẻ này có kích thước thu nhỏ cố định dựa trên nội dung danh sách ban đầu để tránh sự khác biệt về kích thước khi nội dung tải lười đượ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, cho phép thêm các giai đoạn bổ sung nếu cần trong tương lai. (I48c93)
  • Chúng tôi đã thêm EdgeButton, một nút riêng biệt dành riêng cho Wear có hình dạng tuân theo độ cong của phần cuối màn hình (I16369)
  • Chúng tôi đã thêm một khe mới vào ScreenScaffold cho nút dưới cùng (chẳng hạn như EdgeButton). Khe này sẽ hiển thị và đổ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 biến thể trên CircularProgressIndicator. Biến thể được phân đoạn hiển thị một giá trị tiến trình trên tất cả các phân đoạn hoặc hiển thị từng phân đoạn ở trạng thái 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/bỏ qua hoặc một nút dưới cùng (thường là EdgeButton) bên dưới một ngăn xếp các tuỳ 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. (Ieb873)
  • Chúng tôi đã thêm OpenOnPhoneDialog để chỉ ra một hành động 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ờ đã chỉ định. (I978fd)
  • Chúng tôi đã thêm Confirmation, một thành phần hộp thoại có các khe cho biểu tượng và văn bản 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/không thành công. Thông báo xác nhận sẽ tự động đóng sau khi hết thời gian chờ. (Ib43e8)
  • Chúng tôi đã thêm nền vào TimeText để giảm thiểu các vấn đề khi nội dung cơ bản và TimeText chồng chéo và che khuất thời gian. (Ia11fd)
  • Chúng tôi đã thêm LevelIndicator để hiển thị giá trị của một chế độ cài đặt như âm lượng và có thể được sử 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 hiển thị ở phía đối diện của màn hình, có chiều rộng nét lớn hơn và màu chỉ báo khác theo mặc định. (I8a4ac)
  • Chúng tôi đã thêm TimePicker, với các bố cục cho thời gian 24 giờ (có hoặc không có giây) hoặc thời gian 12 giờ với lựa chọn am/pm. (Ia5124)
  • Chúng tôi đã thêm DatePicker, với cấu hình để sắp xếp 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 tham số trọng số vào hàm text của TimeText. Trong trường hợp TimeText được tạo thành từ nhiều phần tử văn bản, bạn có thể 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 đơ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 kênh con (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à thành phần điều khiển Hộp đánh dấu 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à thành phần điều khiển Nút chuyển con (I0d349)
  • Chúng tôi đã cập nhật tài liệu về AnimatedText để giải thích hành vi vượt quá giới hạn. (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 ảnh động hình dạng không bắt buộc cho IconButtonTextButton khi nhấn. (Iffca5)
  • Chúng tôi đã thêm một biến thể màu bổ sung, FilledVariant, vào Button, IconButton, TextButton, CompactButtonEdgeButton (I65fc3)
  • Chúng tôi đã thêm tham số forcedSize vào ImageWithScrimPainter, nhờ đó, nền hình ảnh Nút hiện duy trì kích thước thành phần theo mặc định. Việc đặt forcedSize = null sẽ sử dụng Painter.instrinsicSize. (Ic57af)
  • Chúng tôi đã thêm thao tác nhấn và giữ vào Nút (Ib613d)
  • Tính năng hỗ trợ nhấp và giữ cũng được thêm vào IconButtonTextButton. (I38891)
  • Thêm tính năng hỗ trợ lượt nhấp kéo dài vào Thẻ. (I305d5)
  • Chúng tôi đã thêm LocalTextMaxLines, LocalTextAlign, LocalTextOverflow dưới dạng CompositionLocals và sử dụng các tham số này làm tham số mặc định trên Text. Giờ đây, các thành phần cục bộ của thành phần có thể sử dụng 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 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 – các nhà phát triển có thể ghi đè các tham số này trên Văn bản trực tiếp 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 vấn đề trong TimeText để hỗ trợ các góc quét lớn hơn. (Ie489f)
  • Khắc phục 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 phân tách khi cung cấp 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 là 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 để 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 lỗi các nút có thể chọn thông báo nhấn đúp để bật/tắt khi đã được 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 – cũng như 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 sử dụng cho Hộp đánh dấu. (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 sự cố kỹ thuật trong bản phát hành trước đó khiến thiếu các tệp jar nguồn. Không có thay đổ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 độ tương phản của alpha trạng thái nhấn và tập trung của Ripple. (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 các thay đổi mới nhất đối với 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 nội dung 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ần tra cứu CompositionLocal bằng cách thêm các bản sao màu được lưu vào bộ nhớ đệm và tạo các phương thức của RadioButtonColorsSplitRadioButtonColors nội bộ. (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 trong 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 thực thể được lưu vào bộ nhớ đệm trong nội bộ và giảm mức sử dụng CompositionLocal. (I5f51c)
  • Chúng tôi đã xoá hao tổn của rememberUpdatedState trong các lớp màu cụ thể của 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, có thể sử dụng cùng màu tô, màu sắc và đường viền như Button.(I05df0)

Thay đổi về API

  • Chúng tôi đã thêm RadioButton/SplitRadioButton làm vùng chứa cho các thành phần điều khiển lựa chọn, chẳng hạn như thành phần điều khiển Nút chọn. Đ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à độ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 material3 hiển thị MutableInteractionSource trong API của chúng đã được cập nhật để hiện MutableInteractionSource có thể nhận giá trị rỗng và mặc định là rỗng. Không có thay đổi ngữ nghĩa nào ở đây: việc truyền giá trị rỗng có nghĩa là bạn không muốn chuyển MutableInteractionSource lên trên và MutableInteractionSource 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ể khi cần, giúp cải thiện hiệu suất trên các thành phần này. Nếu không sử dụng MutableInteractionSource mà bạn truyền đến các thành phần này, 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 gợn sóng mới trong 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 một CompositionLocal, LocalUseFallbackRippleImplementation tạm thời để chuyển các thành phần Material về sử dụng các API rememberRipple/RippleTheme không dùng nữa. Tính năng 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 RippleTheme tuỳ chỉnh. Hãy xem developer.android.com để biết thông tin di chuyển và thông tin cơ bản khác về thay đổi này. (af92b21)
  • Chúng tôi đã cải tiến một số điểm nhỏ đối với API HorizontalPageIndicator và tài liệu của API này. (I60efc)
  • Chúng tôi đã cập nhật ColorScheme để không thể thay đổi, khiến việc cập nhật màu riêng lẻ kém hiệu quả hơn, nhưng giúp việc sử dụng màu phổ biến hiệu quả hơn. Lý do đằng sau thay đổi này là phần lớn ứ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 riêng lẻ. Bạn vẫn có thể làm việc này nhưng sẽ phải kết hợp lại nhiều hơn trước. Do đó, chúng ta sẽ giảm đáng kể số lượng gói thuê bao trạng thái thông qua tất cả mã Material và sẽ tác động đến chi phí khởi chạy 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 API ToggleButtonSplitToggleButton để cho phép tuỳ chỉnh màu bị tắt. Ngoài ra, 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 ta đã 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 sử dụng trong (Split)ToggleButton để xử lý lượt nhấp, vì vậy, các thành phần hiện được chỉ định rõ ràng hơn là chỉ hiển thị (và không dùng để 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 thời lượng và độ trễ trong Wear Compose Material 3. (I437cd)
  • Chúng tôi đã khắc phục lỗi trong ToggleButton, SplitToggleButton, Checkbox, SwitchRadioButton để thông báo 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). (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ơ sở 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. Phần sau sẽ lấy màu từ MaterialTheme để sử dụng trong scrim 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 Material3 HorizontalPageIndicator – thay vào đó, tham số này sẽ tuân theo hình dạng màn hình thiết bị (thẳng hoặc tròn). (I83728)
  • Chúng tôi đã tách màu cho SplitToggleButton khỏi 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 trường Phụ đề (không bắt buộc) vào TitleCard. (Ifc45a)
  • Chúng tôi đã thêm mã thông báo 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ã Buttons để sử dụng mã thông báo thiết kế Material3. (I92fe4)
  • Khai báo API Nút chuyển và Thanh trượt Wear Material 3 ở chế độ 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á kích thước ExtraSmall khỏi TextButtonTextToggleButton 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 AppCard có bản minh hoạ hình ảnh, xoá AppCard có bản minh hoạ Nền (Id735f)
  • Khắc phục lỗi trong các nút tròn khi đối tượng sửa đổi không được liên kết chính xác. (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 dưới dạng các quy tắc ràng buộc API , như đã nêu trước đó trong các nhận xét. (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 cho phù hợp với thiết kế Material3. (Ib2495)
  • Chúng tôi đã khắc phục chế độ hiển thị dấu đánh vào hộp đánh dấu ở trạng thái 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ế độ điều khiển lựa chọn sau đây cho Material3 – Switch, Checkbox, RadioButton. (Ib918c)
  • Chúng tôi đã thêm IconToggleButtonTextToggleButton vào Material3, một nút bật/tắt hình tròn với một khe duy nhất 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 Material3 SwipeToDismissBox. Tệp 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 tệp đó. (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 các Hình dạng trong giao diện Wear Material 3 để sử dụng RoundedCornerShape thay vì Hình dạng. (Idb133)
  • Chúng tôi đã công khai các hằng số chiều cao cho Button (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 ngang và dọc của Button. (Ieeaf7)

Sửa lỗi

  • Nút hiện 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ề hỗ trợ tiếp cận. (I61ce9)
  • StepperInlineSlider hiện hỗ trợ các lượt 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 bỏ qua ngữ nghĩa phạm vi theo mặc định, theo ý kiến phản hồi của nhà phát triển. Chúng tôi cung cấp Modifier.rangeSemantics cho các trường hợp cần 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 thành 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 mở rộng 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, 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 cung cấp trong TextButtonDefaults. TextButton mặc định không có đường viền và nền trong suốt cho các thao tác có mức độ nhấn mạnh thấp. Đối với các thao tác cần nhấn mạnh cao, hãy sử dụng filledTextButtonColors; đối với thao tác nhấn mạnh trung bình, được viền TextButton, hãy đặt đường viền thành ButtonDefaults.outlinedButtonBorder; đối với thao tác nhấn mạnh trung bình giữa viền và tô màu, hãy sử dụng filledTonalTextButtonColors. (I667e4)
  • Chúng tôi đã thêm Card, OutlinedCard, AppCardTitleCard vào thư viện Wear Compose Material3. Bạn cũng có thể tạo giao diện được viền cho AppCardTitleCard bằng cách sử dụng CardDefaults.outlinedCardColorsCardDefaults.outlinedCardBorder(I80e72)

Thay đổi về API

  • Chúng tôi đã di chuyển tham số nhãn Nút (Button label) về cuối để hỗ trợ cú pháp trailing lambda và xoá tham số vai trò (vì tham số này có thể được ghi đè bằng Modifier.semantics). Các hàm khởi tạo ButtonColors hiện 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 Material3, 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 cung cấp 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 sân vận động và trước đây có tên là Khối trong thư viện Material Wear Compose (đã đổi tên thành Nút để đảm bảo tính nhất quán với thư viện Compose Material 3). Nút mặc định có nền được lấp đầy và có các biến thể nút cho FilledTonal (nền bị tắt), Đường viền (trong suốt với đường viền mỏng) và Con (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 văn bản và biểu tượng đơn giản sẽ xuất hiện trong 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, 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 Sửa 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ác thành phần được thiết kế lại và giao diện được cập nhật. Material 3 trên Wear Compose được thiết kế để kết hợp 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 đã sửa đổi các màu 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 song song Wear Material (androidx.wear.compose:compose-material) và Wear Material 3 (androidx.wear.compose:compose-material3). 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 từ 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 là hai thư viện độc lập và không được kết hợp trong cùng một ứng dụng, chủ yếu là do các thư viện này tham chiếu đến các giao diện khác nhau, dẫn đến sự không nhất quán ngoài dự kiến.