Compose Material 3
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 12 tháng 12 năm 2024 | 1.3.1 | - | - | 1.4.0-alpha05 |
Cấu trúc
Compose là sự kết hợp của 7 mã nhận dạng Nhóm Maven trong androidx
. Mỗi Nhóm chứa một tập con chức năng mục tiêu và mỗi tập con có một tập hợp ghi chú phát hành riêng.
Bảng này giải thích các nhóm và đưa ra đường liên kết đến từng tập hợp ghi chú phát hành.
Nhóm | Mô tả |
---|---|
compose.animation | Tạo ảnh động trong các ứng dụng Jetpack Compose để làm phong phú trải nghiệm người dùng. |
compose.compiler | Biến đổi các hàm @Composable và hỗ trợ hoạt động tối ưu hoá bằng trình biên dịch bổ trợ Kotlin. |
compose.foundation | Viết ứng dụng Jetpack Compose bằng các khối dựng có sẵn, cũng như mở rộng nền tảng để xây dựng các thành phần của hệ thống thiết kế của riêng bạn. |
compose.material | Xây dựng các giao diện người dùng Jetpack Compose bằng các thành phần Material Design có sẵn. Đây là điểm truy cập cấp cao hơn của Compose, được thiết kế nhằm cung cấp các thành phần theo như mô tả trên trang web www.material.io. |
compose.material3 | Xây dựng giao diện người dùng Jetpack Compose bằng các thành phần Material Design 3, phiên bản cải tiến tiếp theo của Material Design. Material 3 có khả năng tuỳ chỉnh giao diện cập nhật, cũng như các thành phần và tính năng cá nhân hoá Material You, chẳng hạn như màu động. Công cụ này được thiết kế để phù hợp với phong cách đồ hoạ và giao diện người dùng hệ thống mới trên Android 12. |
compose.runtime | Các khối dựng cơ bản cho mô hình lập trình và tính năng quản lý trạng thái của Compose, đồng thời là thời gian chạy cốt lõi để trình biên dịch bổ trợ Compose nhắm đến. |
compose.ui | Các thành phần cơ bản của giao diện người dùng Compose cần thiết để tương tác với thiết bị, bao gồm cả bố cục, bản vẽ và phương thức nhập. |
Khai báo phần phụ thuộc
Để thêm một phần phụ thuộc trên Compose, 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.compose.material3:material3:1.3.1" implementation "androidx.compose.material3:material3-window-size-class:1.3.1" implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.3.1") implementation("androidx.compose.material3:material3-window-size-class:1.3.1") implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Để biết thêm thông tin về các phần phụ thuộc, hãy xem bài viết Thêm phần phụ thuộc vào bản dựng.
Ý kiến phản hồi
Ý kiến phản hồi của bạn có thể giúp chúng tôi cải thiện Jetpack. Hãy cho chúng tôi biết nếu bạn phát hiện lỗi mới hoặc có ý tưởng cải thiện thư viện này. Vui lòng xem các lỗi hiện có trong thư viện này trước khi báo một lỗi mới. Bạn có thể thêm lượt bình chọn cho lỗi hiện có bằng cách nhấp vào nút dấu sao.
Xem tài liệu về Công cụ theo dõi lỗi để biết thêm thông tin.
Compose Material3 Common Phiên bản 1.0
Phiên bản 1.0.0-alpha01
Ngày 17 tháng 4 năm 2024
Phát hành androidx.compose.material3:material3-common:1.0.0-alpha01
, androidx.compose.material3:material3-common-android:1.0.0-alpha01
và androidx.compose.material3:material3-common-desktop: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
Các thành phần không có giao diện có thể dùng để tạo thành phần Material Design:
- Bảng tông màu
- Biểu tượng
- Kích thước đích chạm
Compose Material3 Adaptive Navigation Suite Phiên bản 1.0
Phiên bản 1.0.0-alpha07
Ngày 1 tháng 5 năm 2024
Phát hành androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07
và androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07
. Phiên bản 1.0.0-alpha07 bao gồm các thay đổi sau.
Thay đổi về API
- Đặt các API bộ điều hướng thành không thử nghiệm (If62af)
Sửa lỗi
- Sử dụng phần lồng ghép cho nội dung theo mặc định (50266df)
Phiên bản 1.0.0-alpha06
Ngày 17 tháng 4 năm 2024
Phát hành androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06
và androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06
. Phiên bản 1.0.0-alpha06 bao gồm các thay đổi sau.
Thay đổi về API
- Thêm
containerColor
vàcontentColor
vàoNavigationSuiteScaffoldDefaults
. (I64e3a, b/331993720) - Thêm hàm
itemColors
vàoNavigationSuiteDefaults
. (Idf719, b/328480012) - Đặt
NavigationSuiteScope
ở chế độ kín. (Iefa57)
Phiên bản 1.0.0-alpha05
Ngày 6 tháng 3 năm 2024
Phát hành androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05
và androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05
. Phiên bản 1.0.0-alpha05 bao gồm các thay đổi sau.
Thay đổi về API
- Đặt hàm khởi tạo
NavigationSuiteItemColors
ở chế độ công khai. (Ica83a, b/324886877)
Phiên bản 1.0.0-alpha04
Ngày 21 tháng 2 năm 2024
Phát hành androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04
và androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04
. Phiên bản 1.0.0-alpha04 bao gồm các thay đổi sau.
Thông tin cập nhật về phần phụ thuộc
- Cập nhật các phần phụ thuộc thích ứng Material3 thành đường dẫn mô-đun mới. (Ibc421)
- Di chuyển để sử dụng phiên bản Trình quản lý cửa sổ của các lớp kích thước cửa sổ. (I3794d)
Phiên bản 1.0.0-alpha03
Ngày 7 tháng 2 năm 2024
Phát hành androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03
và androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03
. Phiên bản 1.0.0-alpha03 bao gồm các thay đổi sau.
Thay đổi về API
- Cập nhật tên gói thành navigationsuite từ navigation-suite (I7eff7)
- Các thành phần Material3 hiển thị
MutableInteractionSource
trong API của chúng đã được cập nhật để hiệnMutableInteractionSource
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ểnMutableInteractionSource
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ụngMutableInteractionSource
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. (I41abb, b/298048146)
Phiên bản 1.0.0-alpha02
Ngày 13 tháng 12 năm 2023
Phát hành androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02
và androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02
. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.
Tính năng mới
- Thêm
NavigationSuiteType
"Không có" (If8cb1, b/313688598)
Sửa lỗi
- Khắc phục thành phần điều hướng lấp đầy toàn bộ màn hình khi nền tảng gốc có
modifier.fillMaxSize
. (c9cf250, b/312664933)
Phiên bản 1.0.0-alpha01
Ngày 15 tháng 11 năm 2023
Phát hành androidx.compose.material3:material3-adaptive-navigation-suite: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
Compose Material3 Adaptive Phiên bản 1.0
Phiên bản 1.0.0-alpha06
Ngày 7 tháng 2 năm 2024
Phát hành androidx.compose.material3:material3-adaptive:1.0.0-alpha06
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06
và androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06
. Phiên bản 1.0.0-alpha06 bao gồm các thay đổi sau.
Tính năng mới
- Thêm các tuỳ chọn hành vi bổ sung cho thao tác điều hướng quay lại
ThreePaneScaffoldNavigator
. (I858aa) - Thêm nội dung đích đến không bắt buộc vào nhật ký điều hướng. (Ibd7e6)
Phiên bản 1.0.0-alpha05
Ngày 24 tháng 1 năm 2024
Phát hành androidx.compose.material3:material3-adaptive:1.0.0-alpha05
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05
và androidx.compose.material3:material3-adaptive-desktop: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
- Hỗ trợ tính năng nhận biết nhật ký trong tính năng điều hướng và tính toán giá trị của Scaffold (I71d46)
Phiên bản 1.0.0-alpha04
Ngày 10 tháng 1 năm 2024
Phát hành androidx.compose.material3:material3-adaptive:1.0.0-alpha04
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04
và androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04
. Phiên bản 1.0.0-alpha04 bao gồm những thay đổi sau.
Tính năng mới
- Thêm tính năng hỗ trợ cạnh-cạnh trong ngăn scaffolding (I1b462)
Thay đổi về API
- Di chuyển các thuộc tính giới hạn bản lề trong Posture sang danh sách thông tin bản lề (I24f90)
Sửa lỗi
- Khắc phục
AnimatedPane
không được kết hợp lại (c3f573d)
Phiên bản 1.0.0-alpha03
Ngày 13 tháng 12 năm 2023
Phát hành androidx.compose.material3:material3-adaptive:1.0.0-alpha03
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03
và androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03
. Phiên bản 1.0.0-alpha03 bao gồm các thay đổi sau.
Thay đổi về API
- Thay đổi vai trò của giàn giáo thành bí danh của
ThreePaneScaffoldRole
. (I65bd1) - Tạo lớp cơ sở cho các vai trò của giàn giáo (I4784d)
- Xoá tham số không cần thiết khỏi nội dung của
AnimatedPane
(Ibc73b) - Đổi tên
collectWindowSizeAsState
và trả về các giá trị thô (I480f4)
Phiên bản 1.0.0-alpha02
Ngày 29 tháng 11 năm 2023
Phát hành androidx.compose.material3:material3-adaptive:1.0.0-alpha02
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02
và androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02
. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.
Thay đổi về API
Sửa lỗi
- Khắc phục lỗi các ngăn không được chuyển đổi khi không sử dụng
AnimatedPane
(d88f181)
Phiên bản 1.0.0-alpha01
Ngày 15 tháng 11 năm 2023
Phát hành androidx.compose.material3:material3-adaptive: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
API điều kiện thích ứng Material3:
API chỉ thị giàn điều chỉnh cho ngăn thích ứng Material3:
API giàn ngăn thích ứng Material3:
- API cơ bản của ngăn ngăn xếp
Compose Material3 Phiên bản 1.4
Phiên bản 1.4.0-alpha05
Ngày 12 tháng 12 năm 2024
Phát hành androidx.compose.material3:material3-*:1.4.0-alpha05
. Phiên bản 1.4.0-alpha05 bao gồm các thay đổi sau.
Thay đổi về API
- Thay thế loại trong giá trị
WideNavigationRailState.current/target
cho một enum để dễ đọc hơn (I2d6ab) SplitButton
thay đổi API Hình dạng từ lớp dữ liệu thành lớp để tương thích với tệp nhị phân. (I53812)- Thêm một API chú giải công cụ có tham số
onDismissRequest
để nhà sáng tạo có thể quyết định điều gì sẽ xảy ra khi người dùng nhấp vào bên ngoài chú giải công cụ. Ngừng sử dụng API cũ không chứa tham số mới này. (I99aef) - Thay đổi tên
opticalCentering
thànhhorizontalCenterOptically
. Đặt đối tượng sửa đổi thành nội bộ. Thay thế tham số khoảng đệm bằng độ dời bắt đầu và kết thúc tối đa. (I0b904) - Thay đổi
WideNavigationRailState
để có giá trị hiện tại/mục tiêu, xoá enum để chuyển sang boolean. (Idfa29, b/356039090) - Thêm
NavigationBarItemComponentOverride
. (I3a06a)
Sửa lỗi
- Khắc phục hành vi của thanh ứng dụng trên cùng và dưới cùng để thay đổi màu một cách đáng tin cậy khi nội dung được cuộn hết cỡ. (Idc4e8, b/293665988)
- Các hàm hành vi cuộn cho thanh ứng dụng trên cùng và dưới cùng hiện trả về một hành vi đã ghi nhớ để hoạt động hiệu quả hơn trong các lần kết hợp lại. (I0fdbe, b/207957336)
- Tham số đối tượng sửa đổi hiện được áp dụng sau các đối tượng sửa đổi nội bộ như hành vi kéo và ngữ nghĩa, thay vì trước đó. Điều này ảnh hưởng đến thứ tự áp dụng đối tượng sửa đổi. (I8d83f)
- Bảng dưới cùng đã mở rộng vẫn mở rộng khi thay đổi kích thước. (I2870b, b/324934884)
- Chỉnh sửa chính xác trạng thái định tuyến và cờ thanh điều hướng cho các thuộc tính cửa sổ. (Ie674d, b/362539765)
- Di chuyển tham số đối tượng sửa đổi đến thư mục gốc của scaffolds, như đã ghi nhận. Điều này giúp việc triển khai phù hợp với M2. (I0235e, b/372311595)
Đóng góp bên ngoài
- Hàm
DatePickerDialog
được phổ biến. (I7dced)
Phiên bản 1.4.0-alpha04
Ngày 13 tháng 11 năm 2024
Phát hành androidx.compose.material3:material3-*:1.4.0-alpha04
. Phiên bản 1.4.0-alpha04 bao gồm các thay đổi sau.
Thay đổi về hành vi
- Huỷ bỏ các thay đổi về màu sắc được giới thiệu trong aosp/3212478 đối với
iconButtonColors
,iconToggleButtonColors
,outlinedIconButtonColors
,outlinedIconToggleButtonColors
vàoutlinedIconToggleButtonBorder
. Di chuyển hành vi hiện đã được đảo ngược vào một nhóm hàm mới có tên làiconButtonVibrantColors
, v.v. để nhấn mạnh các màu có độ tương phản cao được trả về. (Iffd8d)
Tính năng mới
- Giới thiệu thành phần
VerticalDragHandle
(I6c770)
Thay đổi về API
- Đổi tên
DismissibleModalWideNavigationRailDefaults
thànhModalWideNavigationRailDefaults
. (I8e877) - Thêm
NavigationBarComponentOverrides
. (I8a3f3) - Thêm
NavigationRailComponentOverride
. (I83e13) - Giới thiệu
WideNavigationRailState
để xử lý việc thu gọn/mở rộng dải điều hướng, cho phép đóngModalWideNavigationRail
và xoáDismissibleModalWideNavigationRail
. (I88568) - Thêm kích thước mặc định xSmall, medium, large và xLarge vào kích thước mặc định của nút bật/tắt. (Ie95d1)
- Thêm kích thước mặc định xSmall, medium, large và xLarge vào kích thước mặc định của nút. (If8b6d)
Sửa lỗi
- Màu biểu tượng theo sau của khối lọc đã được cập nhật từ Màu chính thành
OnSurfaceContainer
, theo thông số kỹ thuật. Tất cả màu đường viền của khối đã được cập nhật từ Đường viền thành Biến thể đường viền, theo thông số kỹ thuật. (I68bd4)
Phiên bản 1.4.0-alpha03
Ngày 30 tháng 10 năm 2024
Phát hành androidx.compose.material3:material3-*:1.4.0-alpha03
. Phiên bản 1.4.0-alpha03 bao gồm các thay đổi sau.
Thay đổi về API
- Ngừng sử dụng hàm khởi tạo
SheetState
có mật độ để thay thế bằng ngưỡng vị trí và tốc độ. (Ifd16e) - Thêm
rememberTooltipPositionProvider
chứa logic định vị đã cập nhật. Ngừng sử dụngrememberPlainTooltipPositionProvider
vàrememberRichTooltipPositionProvider
. (Ie66e2) ModalBottomSheetProperties
bổ sung cho phép tuỳ chỉnh màu thanh trạng thái và thanh điều hướng. Theo mặc định, các chế độ này sẽ cập nhật dựa trên màu nội dung thay vì trạng thái giao diện tối của hệ thống. (Ib874e, b/362539765)- Cải thiện trải nghiệm nhập cho bộ chọn ngày: khi ở chế độ nhập, trường văn bản ngày sẽ được lấy tiêu điểm để nhập văn bản ngay lập tức. Thay đổi này sẽ thêm một tham số
requestFocus
vàoDatePicker
vàDateRangePicker
. Bạn có thể ngăn tiêu điểm bằng cách truyềnfalse
. (I12d09, b/286399710, b/340102743) - Lưu các hình dạng mặc định vào bộ nhớ đệm của đối tượng Shape. Đặt hình dạng mặc định là
@Composable
cho nút bật/tắt. Thu gọn các hình dạng thành một hình dạng mặc định vì các biến thể trỏ đến cùng một tệp mã thông báo. (Iaa014)
Sửa lỗi
- Tối ưu hoá hành vi
contentPadding
của Scaffold để tránh luôn phải kết hợp lại nội dung phần thân khicontentPadding
thay đổi. (I8c8e2, b/373904168) - Đổi tên
TextFieldLabelScope
progress
thànhlabelMinimizedProgress
- Đổi tên
TextFieldLabelPosition
Default
thànhAttached
. Các thành phần giao diện đã bị xoá. (If75c6) - Khắc phục vấn đề với
DatePicker
ở chế độ nhập, trong đó lỗi xác thực có thể khiến chiều cao của thành phần thay đổi. (I2e229, b/280462363) - Thay đổi giá trị của Thanh trượt Material khi nhấn các phím điều khiển. (I1c442)
Phiên bản 1.4.0-alpha02
Ngày 16 tháng 10 năm 2024
Phát hành androidx.compose.material3:material3-*:1.4.0-alpha02
. Phiên bản 1.4.0-alpha02 bao gồm các thay đổi sau.
Thay đổi về API
- Cập nhật bộ chọn ngày để đảm bảo việc sử dụng Ngôn ngữ nhất quán trong
DatePicker
vàDateRangePicker
khi đặt Ngôn ngữ trực tiếp thông quaDatePickerState
hoặcDateRangePickerState
. Xin lưu ý rằng khi đặt Ngôn ngữ trực tiếp thành trạng thái, bạn phải đảm bảo rằng văn bản tiêu đề và dòng tiêu đề được bản địa hoá cho phù hợp, vì văn bản mặc định của chúng vẫn sẽ được áp dụng theo Ngôn ngữ mặc định của nền tảng. (I37073, b/326490763, b/321657276) SheetState.isAnimationRunning
hiện đã hiển thị. (I9a3d7)DatePickerColors
hiện được ưu tiên chính xác hơn bất kỳ màu nào xung đột được xác định ở kiểu văn bản Kiểu chữ của giao diện. Ngoài ra, xin lưu ý rằng bản cập nhật này điều chỉnh vị trí của tham sốcolor
trong các hàm bộ chọn ngày và giới thiệu tham sốcontentColor
để tuỳ chỉnh màu văn bản tiêu đề và tiêu đề. (I30d03, b/347031394)- Đổi tên
SplitButton
thànhSplitButtonLayout
và xoá các API biến thể màuSplitButton
, các biến thể sẽ được thực hiện bằng cách sử dụng lại các biến thể nút doSplitButtonDefaults
cung cấp. (I44c36) ModalBottomSheet
hiện có tham sốsheetGestureEnabled
(I856cb, b/288211587)- Đổi tên
standardMotionScheme
vàexpressiveMotionScheme
thành chuẩn và biểu cảm. Giờ đây, bạn có thể truy cập vào cả hai hàm thông qua đối tượng đồng hànhMotionScheme
bằng cách gọiMotionScheme.standard()
vàMotionScheme.expressive()
. (Iceccf) - Thêm tham số
maxWidth
vào chú giải công cụ đơn giản và đa dạng. Giá trị này mặc định là thông số thiết kế 200 dp cho chú giải công cụ đơn giản và 320 dp cho chú giải công cụ đa dạng thức. (I30ce9)
Sửa lỗi
DatePicker
vàDateRangePicker
hiện cập nhật chính xác tháng hiển thị khi được đặt thông quadisplayedMonthMillis
của trạng thái. (If9e47, b/333414302)- Nội dung
ModalBottomSheet
hiện di chuyển nội dung ra khỏi thanh trạng thái. (I5114c, b/321877275, b/336962418, b/342093067) - [Bottom Sheet] Thay đổi mức độ ưu tiên của lệnh gọi lại về
PRIORITY_DEFAULT
để cho phép bàn phím IME đóng trước. (I447fb) - Khắc phục sự cố trong
DatePicker
vàDateRangePicker
khi năm tối thiểu có thể chọn được được đặt thành năm trong tương lai. (I78656, b/319395747) - Khắc phục vấn đề về bộ chọn ngày để cập nhật giao diện người dùng khi áp dụng thực thể
SelectableDates
đã cập nhật. (Iad59a, b/290135807, b/339898760)
Phiên bản 1.4.0-alpha01
Ngày 2 tháng 10 năm 2024
Phát hành androidx.compose.material3:material3-*:1.4.0-alpha01
. Phiên bản 1.4.0-alpha01 bao gồm các thay đổi sau.
Thay đổi về hành vi
- Thư viện không còn thêm phần phụ thuộc vào
material-icons-core
nữa, vì vậy, nếu dự án của bạn phụ thuộc vào phần phụ thuộc đó, bạn sẽ phải thêm phần phụ thuộc đó vào tệpbuild.gradle[.kts]
. (I735ff, b/349894318) - Thay đổi màu nhãn đang hoạt động của
NavigationBarItem
vàNavigationRailItem
từonSurface
thànhsecondary
để cải thiện khả năng hữu dụng, độ tương phản màu và cải thiện tính nhất quán trong hệ thống (Ibc297), để quay lại hành vi trước đó, hãy sao chép màu mặc định và thay đổiselectedTextColor
thànhMaterialTheme.colorScheme.onSurface
. - Các thành phần Material 3 hiện đang sử dụng
MotionScheme
mới để xác định chuyển động của chúng. (Ie0f93) - Thay đổi chuyển động không xác định của Chỉ báo tiến trình dạng vòng tròn (I3c07e)
- Cập nhật
OutlinedIconButtonColors
vàOutlinedIconToggleButtonColors
để có độ tương phản màu tốt hơn. (I2743d) - Cập nhật màu vùng chứa và nội dung cho
FilledIconToggleButtonColors
vàFilledTonalIconToggleButtonColors
. (Ic5d0f) - Cập nhật màu đường viền
OutlinedButton
từoutline
thànhoutlineVariant
. (057f00)
Thay đổi về API
- Thêm một tham số
reverseLayout
không bắt buộc vào hàmenterAlwaysScrollBehavior
củaTopAppBar
để hỗ trợ tốt hơn nội dung được đặt bằngreverseLayout
. (I4e0e5) SegmentedButton
hiện hỗ trợ đối sốcontentPadding
. (I5ad91, b/358414376)PullToRefreshState
không còn triển khai mặc định choisAnimating
(I6a593)- Thêm các phương thức nạp chồng mới của Material
TextField
vàOutlinedTextField
sử dụngTextFieldState
. Thêm các API hộp trang trí tương thích vớiTextFieldDecorator
. (If13a1) - Thêm tham số để kiểm soát
labelPosition
của trường văn bản. Việc sử dụngalwaysMinimize
cho phép mẫu giao diện người dùng hiển thị nhãn và phần giữ chỗ trong trường văn bản cùng một lúc ngay cả khi trường không được lấy tiêu điểm. (I1ef2c) - Thêm Material
SecureTextField
vàOutlinedSecureTextField
cho các trường nhập mật khẩu. (I7e22d) - Thêm phạm vi vào nhãn trường văn bản để truy vấn tiến trình ảnh động. (If5ec8)
- Thêm tính năng hỗ trợ cho
MotionEvent.CLASSIFICATION_DEEP_PRESS
vào chú giải công cụ. (I62e6a) isAfternoon
củaTimePickerState
hiện là một val mở rộng thay vì var trong giao diện, được đổi tên thànhisPm
(I89a97)- Cập nhật lớp kiểu chữ để hỗ trợ tỷ lệ kiểu chữ được nhấn mạnh. (Ifa13c)
- Thêm API
ModalWideNavigationRail
và đổi tên APIModalExpandedNavigationRail
thànhDismissibleModalWideNavigationRail
. (Ic9118) - Cập nhật
FloatingAppBarScrollBehavior
để tự động tính toánscreenOffset
và không yêu cầu@Composable
. (Idf349) - Cập nhật API
LoadingIndicator
để khắc phục việc đặt tên tại đối tượng mặc định. Thêm hằng sốLoadingIndicatorElevation
tạiPullToRefresh
. (I1d72b) - Cập nhật API
LoadingIndicator
để khắc phục việc đặt tên tại đối tượng mặc định. Thêm hằng sốLoadingIndicatorElevation
tạiPullToRefresh
. (I1d72b) - Thêm tham số
amplitude
vàwaveSpeed
vào các biến thể không xác định củaLinearWavyProgressIndicator
vàCircularWavyProgressIndicator
. (I2a0c5) - Hỗ trợ thay đổi hình dạng của nút bật/tắt biểu tượng dựa trên trạng thái nhấn hoặc đánh dấu của nút. (Ibc781)
- Cập nhật lớp kiểu chữ để hỗ trợ tỷ lệ kiểu chữ được nhấn mạnh. (Ifa13c)
- Hình dạng
SplitButton
biến đổi dựa trên trạng thái mặc định / được nhấn. Xoá APIAnimatedTrailingButton
vì APITrailingButton
có thể cung cấp các tuỳ chỉnh tương tự (I95066) - Thêm công cụ sửa đổi để tạo ảnh động hiển thị và ẩn FAB, ví dụ: khi nội dung cuộn. (I8338d)
- Thêm khoảng cách và hình dạng nhóm nút được kết nối vào
ButtonGroupDefaults
để sử dụng trong mẫu. (I68e30) - Nút phân tách thêm khoảng đệm ngang cho nút theo sau và bật tính năng căn giữa quang học được tính toán từ sự khác biệt giữa góc bắt đầu và góc kết thúc (I122e2)
- Giới thiệu một Material
MotionScheme
mới để cho phép thiết lập một giao thức cho chuyển động của thành phần. Lược đồ được đặt thông quaMaterialTheme
. (Id50c2)
Sửa lỗi
- Áp dụng chỉ mục di chuyển tiêu điểm chính xác cho các Thành phần kết hợp con
Scaffold
. Thứ tự làtopBar
,bottomBar
, fab, nội dung, thanh thông báo nhanh. (I5936b) - Khắc phục vấn đề tại
DatePicker
vàDateRangePicker
, trong đó ở một số ngôn ngữ và khung định dạng nhất định, một số phần tử ngày (ví dụ: tên tháng) không bắt đầu bằng chữ cái viết hoa. (I1430f) - Tích hợp mã thông báo thành phần Trình đơn FAB và FAB (các bản cập nhật hình ảnh nhỏ cho khoảng đệm và văn bản) (Ib57f3)
ModalBottomSheet
hiện đứng đầu trong thứ tự duyệt qua ngữ nghĩa, theo sau là scrim. (I436f9, b/358594665)- Khắc phục lỗi thanh ứng dụng ở dưới cùng không biến mất hoàn toàn khi cuộn trong viên nang điều hướng ở chế độ tràn viền (I3ee21)
Compose Material3 Phiên bản 1.3
Phiên bản 1.3.1
Ngày 30 tháng 10 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.1
. Phiên bản 1.3.1 bao gồm các thay đổi sau.
Sửa lỗi
DatePicker
vàDateRangePicker
hiện cập nhật chính xác tháng hiển thị khi được đặt thông quadisplayedMonthMillis
của trạng thái. (If9e47, b/333414302)- Khắc phục sự cố trong
DatePicker
vàDateRangePicker
khi năm tối thiểu có thể chọn được được đặt thành năm trong tương lai. (I78656, b/319395747) - Khắc phục vấn đề về bộ chọn ngày để cập nhật giao diện người dùng khi áp dụng thực thể
SelectableDates
đã cập nhật. (Iad59a, b/290135807, b/339898760) - Thay đổi mức độ ưu tiên của lệnh gọi lại mà các trang dưới cùng sử dụng thành
PRIORITY_DEFAULT
để cho phép bàn phím IME đóng trước. (I447fb)
Phiên bản 1.3.0
Ngày 4 tháng 9 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0
. Phiên bản 1.3.0 bao gồm các thay đổi sau.
Những thay đổi quan trọng kể từ phiên bản 1.2.0
Các tính năng chính của phiên bản 1.3.0
Thành phần Material Design 3 mới
- Băng chuyền
HorizontalMultiBrowseCarousel
vàHorizontalUncontainedCarousel
Các điểm cải tiến đối với các thành phần Material Design 3 hiện có.
- [
ModalBottomSheet
] hiện hỗ trợ tính năng Dự đoán thao tác quay lại trên U+ (Iccf32, b/281967264, b/304850357) - [
SearchBar
] hiện hỗ trợ tính năng Xem trước thao tác quay lại trên U+ (I657f8) - Ngăn điều hướng (
ModalDrawerSheet
vàDismissibleDrawerSheet
) hiện hỗ trợ tính năng Xem trước thao tác quay lại trên U+ (Ie5b0b) DropdownMenu
hiện hỗ trợ màu, hình dạng, độ cao và đường viền tuỳ chỉnh. (I8e981,b/289554448, b/301887035, b/283654243)- Cập nhật Thanh trượt để cải thiện khả năng hỗ trợ tiếp cận bằng cách thêm khoảng trống và chỉ báo điểm dừng. (I3058e)
- Cập nhật
ProgressIndicator
để cải thiện khả năng hỗ trợ tiếp cận bằng cách thêm khoảng trống và chỉ báo điểm dừng. (I21451) - Thêm con trỏ mặc định cho chú giải công cụ đa dạng thức, hỗ trợ vẽ con trỏ tuỳ chỉnh cho neo
LayoutCoordinates
đã cho. (Ifd42c) Thay đổi có thể gây lỗi - Các API kéo để làm mới mới:
- Đơn giản hoá
PullToRefreshState
để sử dụng các giá trị phân đoạn thay vì đơn vị Dp. - Trạng thái
isRefreshing
do người dùng kiểm soát thay vìPullToRefreshState
. - Tách riêng kết nối cuộn lồng nhau khỏi
PullToRefreshState
. Lớp này được xử lý bằngPullToRefreshBox
hoặcModifier.pullToRefresh
mới. - Bản cập nhật này là một thay đổi có thể gây lỗi đối với các API thử nghiệm trước đó. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683) Thay đổi có thể gây lỗi về hình ảnh
- Đơn giản hoá
- Cập nhật lớp phủ trạng thái lấy nét thành 0,1f để đảm bảo độ tương phản màu đủ. (I7ea77)
- Điều chỉnh nhỏ đối với màu mặc định của nền và giao diện trong
lightColorScheme
vàdarkColorScheme
. (I9db52) - Cập nhật màu của Thanh trượt và
ProgressIndicator
để tuân theo thông số kỹ thuật mới về Độ tương phản không phải văn bản. (I26807) - Các biến thể
SurfaceContainer
hiện được các thành phần sử dụng. Các thành phần tính toán màu sắc chính thức bằngSurface
vàTonalElevation
hiện sử dụng vai tròSurfaceContainer
theo mặc định, không bị ảnh hưởng bởi độ nâng tông màu. (b/304584161) - Các vai trò cơ sở của Vùng hiển thị và Vùng chứa vùng hiển thị đã được điều chỉnh một chút, cung cấp thêm sắc thái trong giao diện sáng và tối. (I677a5)
- Đã chuyển các API thử nghiệm sang phiên bản ổn định!
- Cải thiện hiệu suất
Phiên bản 1.3.0-rc01
Ngày 21 tháng 8 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-rc01
. Phiên bản 1.3.0-rc01 bao gồm các thay đổi sau.
Sửa lỗi
ModalBottomSheet
hiện đứng đầu trong thứ tự duyệt qua ngữ nghĩa, theo sau là scrim. (I436f9, b/358594665)
Phiên bản 1.3.0-beta05
Ngày 24 tháng 7 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-beta05
. Phiên bản 1.3.0-beta05 bao gồm các thay đổi sau.
- Khắc phục lỗi thiếu hoặc bị cắt nội dung
BottomSheet
trên Android N và O (a10a2d) - Tăng giới hạn ngữ nghĩa của thanh trượt để
TalkBack
hiển thị chính xác các chỉ báo tiêu điểm xung quanh ngón tay cái. (0b5a1d)
Phiên bản 1.3.0-beta04
Ngày 26 tháng 6 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-beta04
. Phiên bản 1.3.0-beta04 bao gồm các thay đổi sau.
Phiên bản 1.3.0-beta03
Ngày 12 tháng 6 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-beta03
. Phiên bản 1.3.0-beta03 bao gồm các thay đổi sau.
Đóng góp bên ngoài
- Cung cấp
androidx.compose.material3.DropdownMenu
từ nhóm tài nguyên chung. (If62c0)
Phiên bản 1.3.0-beta02
Ngày 29 tháng 5 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-beta02
. Phiên bản 1.3.0-beta02 bao gồm các thay đổi sau.
Thay đổi về API
Modifier.pullToRefreshIndicator
hỗ trợ độ cao, cập nhật các API Kéo để làm mới để bật boolean thay vì lambda. Hỗ trợ căn chỉnh nội dung trongPullToRefreshBox
(I75679)- Đặt
TooltipScope
làm giao diện kín và tạo một phương thức triển khai nội bộ để sử dụng trongTooltipBox
và Nhãn. (I3833e) - Thêm hai đối tượng sửa đổi mới vào
CarouselItemScope
–maskClip
vàmaskBorder
– để dễ dàng thêm hình dạng và đường viền vào bất kỳ mục băng chuyền nào (Id67a1) TimePickerState
hiện là một giao diện và cho phép đặt thời gian (I88546)- Cập nhật API để tạo kiểu cho các đường liên kết: di chuyển
TextLinkStyles
sangTextStyle
và xoáTextDefaults
khỏi material. (I5477b)
Sửa lỗi
- Biểu tượng thanh trạng thái và thanh điều hướng
ModalBottomSheet
hiện phản hồi trạng thái giao diện tối. (Ie1fe7, b/338342149) - Thêm ngữ nghĩa đóng trang tính vào scrim
ModalBottomSheet
. (0e61cb,b/328801864)
Đóng góp bên ngoài
- Cung cấp
androidx.compose.material3.AlertDialog
từ nhóm tài nguyên phổ biến (Ia33f5) - Cung cấp
ModalBottomSheet
từ nhóm tài nguyên chung (Id7cc7)
Phiên bản 1.3.0-beta01
Ngày 14 tháng 5 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-beta01
. Phiên bản 1.3.0-beta01 bao gồm các thay đổi sau.
Thay đổi về API
- Sử dụng
DpSize
thay vìCaretProperties
. XoáCaretProperties
. Đổi tênCaretScope
thànhTooltipScope
. (Id9a76) - Cập nhật API để nhận các đường liên kết theo chủ đề Material trong văn bản. Cụ thể, xoá các phương thức khỏi
TextDefaults
để tạoLinkAnnotations
theo chủ đề và phân tích cú pháp HTML bằng các đường liên kết theo chủ đề. Thay vào đó, hãy thêm một lớpTextLinkStyles
cho phép tạo kiểu cho các đường liên kết dưới dạng tham số cho thành phần kết hợp Văn bản. (I31b93)
Phiên bản 1.3.0-alpha06
Ngày 1 tháng 5 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-alpha06
. Phiên bản 1.3.0-alpha06 bao gồm các thay đổi sau.
Thay đổi có thể gây lỗi
Các API kéo để làm mới mới:
- Đơn giản hoá
PullToRefreshState
để sử dụng các giá trị phân đoạn thay vì đơn vị Dp. - Trạng thái
isRefreshing
do người dùng kiểm soát thay vìPullToRefreshState
. - Tách riêng kết nối cuộn lồng nhau khỏi
PullToRefreshState
. Lớp này được xử lý bằngPullToRefreshBox
hoặcModifier.pullToRefresh
mới. - Bản cập nhật này là một thay đổi có thể gây lỗi đối với các API thử nghiệm trước đó. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683)
- Đơn giản hoá
Thay đổi về API
- Xoá
RippleConfiguration#isEnabled
và đặtLocalRippleConfiguration
thành rỗng. Để tắt hiệu ứng gợn sóng, thay vì cung cấpRippleConfiguration
vớiisEnabled = false
, hãy cung cấpnull
choLocalRippleConfiguration
. (I22725) ModalBottomSheet
vẽ chính xác hơn màn hình chờ trên thanh trạng thái khi bật chế độ tràn viền. Nội dung bảng dưới cùng của ngăn xếp hiện có thể sử dụng phần lồng ghép cửa sổ, cho phép hiển thị nội dung phía trên thanh điều hướng. Tham sốModalBottomSheet
windowInsets
được đổi tên thànhcontentWindowInsets
để chỉ định vị trí áp dụng phần lồng ghép, các tham số này không còn liên kết với logic cửa sổ nữa. LoạicontentWindowInsets
đã được thay đổi thành một hàm trả vềWindowInsets
, để cho phép phân giải trong cửa sổ mới. (I39630, b/274872542, b/300280229, b/290893168)PrimaryScrollableTabRow
vàSecondaryScrollableTabRow
hiện sử dụng bố cục tuỳ chỉnh thay vì thành phần kết hợp phụ, điều này sẽ cải thiện hiệu suất. (I991e0)- Các đường liên kết văn bản có tuỳ chọn định kiểu trạng thái nhấn ngoài kiểu thông thường, di chuột qua và lấy tiêu điểm. Mỗi phương thức
TextDefaults
đều có một đối sốpressedStyle
để hỗ trợ việc đó. (Ic473f, b/139312671)
Sửa lỗi
- Các neo kéo ngăn điều hướng hiện khớp với chiều rộng của
drawerContent
. (Ibc72f, b/245355396) - Khoảng đệm trên cùng
OutlinedTextField
cho nhãn hiện tính đến cỡ chữ hệ thống. (Idc781) - Sửa vị trí gói của
CalendarLocale
. (Ifa235) - [Tính năng xem trước thao tác quay lại] Cập nhật ảnh động xem trước thao tác quay lại để sử dụng đường cong nội suy (0,1, 0,1, 0, 1) (I2591a)
Phiên bản 1.3.0-alpha05
Ngày 17 tháng 4 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-alpha05
. Phiên bản 1.3.0-alpha05 bao gồm các thay đổi sau.
Tính năng mới
SearchBar
vàDockedSearchBar
có các phương thức nạp chồng mới lấy tham số trường văn bản. Điều này cho phép tạo kiểu cho trường văn bản riêng biệt với phần còn lại của thanh tìm kiếm cũng như truyền vào các trường văn bản tuỳ chỉnh. Trường văn bản của phương thức triển khai hiện tại đã được cung cấp dưới dạngSearchBarDefaults.InputField
. (I50c73, b/275074248, b/278773336, b/326627700)- thêm lambda
drawTick
vào API công khai để tuỳ chỉnh các kim đánh dấu nếu cần (I0c048)
Thay đổi về API
- Các đường liên kết văn bản có tuỳ chọn định kiểu trạng thái nhấn ngoài kiểu thông thường, di chuột qua và lấy tiêu điểm (I5f864, b/139312671)
- Cập nhật
CarouselItemInfo
để hiển thị một mặt nạ Rect mà mục đang được cắt (I785d8) - Xoá
BasicTooltipState
khỏi API công khai Material 3. Chức năng của lớp này được kết hợp vớiTooltipState
cho đến khiBasicTooltip
của Foundation ổn định. (Icda29) - Thêm đối tượng
TextDefaults
chứa các phương thức để tạoLinkAnnotation
và phân tích cú pháp chuỗi được gắn thẻ HTML áp dụngMaterialTheme
cho các đường liên kết (I98532, b/139312671) ExposedDropdownMenuBoxScope
không còn cho phép các lớp con. Các trình đơn thả xuống hiển thị hiện cóMenuAnchorType
sẽ được truyền đếnmenuAnchor
để hỗ trợ tốt hơn cho a11y. Bạn nên sử dụng phương thức này thay vì truyềnfocusable
đếnExposedDropdownMenu
(hiện không dùng nữa).menuAnchor
có một tham số mới để kiểm soát trạng tháienabled
. (I55ee6, b/257209915, b/308840226)- Sửa màu đường viền của
OutlinedButton
khi tắt. Thêm phương thức nạp chồngButtonDefaults.outlinedButtonBorder("enabled")
lấy trạng thái bật. (Ie650b, b/318461363) - Thêm một lớp
CarouselItemInfo
mới để giúp ứng dụng nhận thông tin về kích thước mặt hàng. (I9070c) - Ngừng sử dụng hàm khởi tạo
ColorScheme
không có vùng chứa bề mặt. Vui lòng chuyển sang hàm khởi tạo có chứa vùng chứa giao diện. (I35c11) - [Outlined]
TextFieldDefaults
ContainerBox
đổi tên thànhContainer
. (Ie8d3b)
Sửa lỗi
BottomSheetScaffold
sẽ không còn cuộn từ cuộn lồng nhau nếusheetSwipeEnabled
là sai. (I5e1c1, b/306464779)- Xoá một số chú thích Chọn tham gia
ExperimentalMaterial3Api
trongIconButtonSamples.kt
. (I111d1)
Phiên bản 1.3.0-alpha04
Ngày 3 tháng 4 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-alpha04
. Phiên bản 1.3.0-alpha04 bao gồm các thay đổi sau.
Tính năng mới
- Thêm hai phiên bản thử nghiệm của Băng chuyền Material3 –
HorizontalMultiBrowseCarousel
vàHorizontalUncontainedCarousel
(I88d64) - Cập nhật Ngăn điều hướng Compose M3 (
ModalDrawerSheet
vàDismissibleDrawerSheet
) để hỗ trợ tính năng Xem trước thao tác quay lại trên U+ (Ie5b0b) - Thêm một API mới trong biểu tượng để cho phép truyền màu phủ dưới dạng lambda nhằm tránh việc kết hợp lại. (I5b5a2)
- Các API thanh ứng dụng trên cùng hiện hỗ trợ chiều cao tuỳ chỉnh cho cả phần cố định và phần có thể thu gọn. (Ib8b0c, b/323403446)
Thay đổi về API
- Các API thanh ứng dụng trên cùng hiện hỗ trợ chiều cao tuỳ chỉnh cho cả phần cố định và phần có thể thu gọn. Khắc phục vấn đề khiến thanh ứng dụng trên cùng một dòng kết hợp lại quá nhiều lần khi cuộn nội dung. Khắc phục vấn đề
MediumTopAppBar
cắt bớt tiêu đề trên các thiết bị có chế độ cài đặt phông chữ/màn hình lớn. (Ib8b0c, b/323403446, b/300953236, b/286296147, b/330410290, b/308540676) SegmentedButton
và các API liên quan hiện đã ổn định (I8a158)SwipeToDismissBox
,SwipeToDismissBoxDefaults
,SwipeToDismissBoxState
vàSwipeToDismissBoxValue
hiện được đánh dấu là ổn định. (I5f000)- Xoá các enum và API
DismissDirection
vàDismissValue
không dùng nữa. (I89ccd) - Thêm thẻ thử nghiệm vào đối tượng đồng hành
CarouselState
của Carousel. (I94154) - Ngừng sử dụng
LocalMinimumInteractiveComponentEnforcement
và giới thiệuLocalMinimumInteractiveComponentSize
để thay thế. (I7a7ac) - Hàm khởi tạo
SearchBarColors
hiện ở chế độ công khai. (I769ca) - Thêm tham số
gesturesEnabled
vàoSwipeToDismissBox
. (Idc59f, b/324170119) - Xoá các API trường văn bản được đánh dấu là không dùng nữa và thử nghiệm. (I1305f)
Phiên bản 1.3.0-alpha03
Ngày 20 tháng 3 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-alpha03
. Phiên bản 1.3.0-alpha03 bao gồm các thay đổi sau.
Thay đổi có thể gây lỗi về hình ảnh
- Cập nhật lớp phủ trạng thái lấy nét thành 0,1f để đảm bảo độ tương phản màu đủ. (I7ea77)
- Điều chỉnh nhỏ đối với màu mặc định của nền và nền trong
lightColorScheme
vàdarkColorScheme
. (I9db52)
Tính năng mới
- Thêm các tham số để tuỳ chỉnh
ExposedDropdownMenu
. Cụ thể, trình đơn hiện có một tham sốfocusable
(mặc định làtrue
) cần được đặt thànhfalse
khi làm việc với các trường văn bản có thể chỉnh sửa. (I4184c, b/323694447, b/278609042)
Thay đổi về API
- Cờ
ScaffoldSubcomposeInMeasureFix
đã bị xoá. (Ie2a4b) NavigationRailItemColors
nay được đánh dấu là@Immutable
. (If6112, b/327660613)NavigationBarItemColors
nay được đánh dấu là@Immutable
. (I42a30, b/298064514)- Sắp xếp lại các tham số trong thành phần kết hợp Slider Track (Đường trượt). (I9f315)
ExposedDropdownMenu
hiện được triển khai bằngPopup
. Hành vi sẽ giống nhau, ngoại trừ các trình đơn có thể lấy làm tâm điểm với các trường văn bản có thể chỉnh sửa có thể bị đóng khi nhập trên bàn phím.
Sửa lỗi
- Các vai trò cơ sở của Vùng hiển thị và Vùng chứa vùng hiển thị đã được điều chỉnh một chút, cung cấp thêm sắc thái trong giao diện sáng và tối. (I677a5)
- Cập nhật màu của Thanh trượt và
ProgressIndicator
để tuân theo thông số kỹ thuật mới về Độ tương phản không phải văn bản. (I26807) - Cập nhật lớp phủ trạng thái lấy nét thành 0,1f để đảm bảo độ tương phản màu đủ. (I7ea77)
- Điều chỉnh nhỏ đối với màu mặc định của nền và nền trong
lightColorScheme
vàdarkColorScheme
. (I9db52)
Phiên bản 1.3.0-alpha02
Ngày 6 tháng 3 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-alpha02
. Phiên bản 1.3.0-alpha02 bao gồm các thay đổi sau.
Thay đổi về API
- Khôi phục trạng thái thanh trượt trở lại ổn định. Đặt lại
State.onValueChangeFinished
thành val. GóionValueChangeFinished
trongrememberUpdatedState
. (I82ab2, b/322269951) - Các thành phần Điều hướng hiện sử dụng các vai trò
SurfaceContainer
mới.DrawerDefaults
hiện cung cấp các thuộc tínhstandardContainerColor
vàmodalContainerColor
riêng biệt.DrawerDefaults.ModalDrawerElevation
hiện là0.dp
. (I7fbac) - Xoá
@Stable
khỏi các trạng thái củaSlider
vì chúng ta đang thay đổistate.onValueChangeFinished
thànhvar
. (Ied34a, b/322269951) - Thông số kỹ thuật của ảnh động
ModalBottomSheet
vàStandardBottomSheet
hiện làTweenSpec
, được cập nhật từ ảnh động có hiệu ứng lò xo. Điều này giúp giải quyết vấn đề về tình trạng vượt quá giới hạn rõ ràng. Các hàm khởi tạoSheetState
không dùng nữa mà không có mật độ đã bị xoá. (I7babc, b/285847707)
Sửa lỗi
- Các biến thể
SurfaceContainer
hiện được các thành phần sử dụng. Các thành phần tính toán màu sắc chính thức bằng Surface vàTonalElevation
hiện sử dụng vai tròSurfaceContainer
theo mặc định, không bị ảnh hưởng bởi độ cao sắc độ. (b/304584161) - Khắc phục lỗi khiến màu vùng chứa không được chọn, bị tắt của
ElevatedFilterChip
chuyển sang màu đen. (I400e6, b/322407043) - Khắc phục chỉ báo tiến trình không xác định khi tiến trình là 0 (Id6582)
- Khắc phục vấn đề về
Slider
vàRangeSlider
trên bố cục RTL (Iab0e1) - Thêm
SliderRangeTolerance
để tính toán phạm vi thanh trượt vì việc làm tròn Float có thể không chính xác. (Ic918a, b/324934900) - Đảm bảo rằng
DatePickerDialog
hiển thị các nút khi lồngDateRangePicker
hoặc khi hiển thị bất kỳ loại bộ chọn ngày nào trên màn hình nhỏ có phông chữ lớn hơn. (Ie4758, b/325107799, b/277768544) Menu
hiện tận dụng vai tròSurfaceContainer
cho màu vùng chứa.MenuDefaults.TonalElevation
hiện là0.dp
. (I135b7)TextField
hiện tận dụng vai tròSurfaceContainerHighest
cho màu vùng chứa. (I4dced)- Các khối nâng cao hiện tận dụng vai trò
SurfaceContainerLow
(I7cd2f) - Màu vùng chứa
DatePicker
hiện làSurfaceContainerHigh
.DatePickerDefaults.TonalElevation
hiện là0.dp
. (Ida753) - Cập nhật màu vùng chứa và màu tay cầm kéo của Bottom Sheets. (I72a0a)
- Màu vùng chứa
RichTooltip
hiện làSurfaceContainer
. (Ia8b45) - Màu vùng chứa
SearchBar
hiện làSurfaceContainerHighest
.SearchBarDefaults.TonalElevation
hiện là0.dp
. (I88604) - Cập nhật nút chuyển các kênh/biểu tượng bị tắt và không được chọn để tận dụng vai trò màu
SurfaceContainerHighest
. (I7687a) - Màu vùng chứa
AlertDialog
hiện làSurfaceContainerHigh
. (Ie0433) - Màu vùng chứa
BottomAppBar
hiện làSurfaceContainer
. MàuTopAppBar
onScroll
hiện làSurfaceContainer
. (I41630) - Màu vùng chứa
ElevatedCard
hiện làSurfaceContainerLow
. Màu vùng chứa củaFilledCard
làSurfaceContainerHighest
. (I35141) - Màu vùng chứa
ElevatedButton
hiện làSurfaceContainerLow
.FilledIconButton
khi không được chọn hiện có màu vùng chứa làSurfaceContainerHighest
. (I792c9) - Cập nhật màu vùng chứa
TimePicker
và vai trò màu mặt đồng hồ thànhSurfaceContainerHighest
. (I43b93)
Phiên bản 1.3.0-alpha01
Ngày 21 tháng 2 năm 2024
Phát hành androidx.compose.material3:material3-*:1.3.0-alpha01
. Phiên bản 1.3.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
- Cập nhật
ModalBottomSheet
Compose M3 để hỗ trợ tính năng Dự đoán thao tác quay lại trên U+ (Iccf32, b/281967264, b/304850357) - Cập nhật
SearchBar
Compose M3 để hỗ trợ tính năng Xem trước thao tác quay lại trên U+ (I657f8) - Cập nhật Thanh trượt để cải thiện khả năng hỗ trợ tiếp cận bằng cách thêm khoảng trống và chỉ báo điểm dừng. (I3058e)
- Cập nhật
ProgressIndicator
để cải thiện khả năng hỗ trợ tiếp cận bằng cách thêm khoảng trống và chỉ báo điểm dừng. (I21451) - Thêm con trỏ mặc định cho chú giải công cụ đa dạng thức, API chú giải công cụ đa dạng thức mới hiện cho phép vẽ con trỏ tuỳ chỉnh cho
LayoutCoordinates
neo nhất định. (Ifd42c)
Thay đổi về hành vi
- Các thành phần Material đã được di chuyển để sử dụng các API gợn sóng mới và không còn truy vấn
RippleTheme
nữa.
Thay đổi về API
drawStopIndicator
thú vị hiện đã được công khai. (I3f59f)- Đánh dấu hàm
formatWithSkeleton
củaDatePicker
là nội bộ (Ic65dc) DropdownMenu
hiện hỗ trợ màu, hình dạng, độ cao và đường viền tuỳ chỉnh. (I8e981, b/289554448, b/301887035, b/283654243)- Các thành phần Material3 hiển thị
MutableInteractionSource
trong API của chúng đã được cập nhật để hiệnMutableInteractionSource
có thể nhận giá trị rỗng, mặc định lànull
. 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ểnMutableInteractionSource
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ụngMutableInteractionSource
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. (I41abb, b/298048146) - Thêm
RippleConfiguration
vàLocalRippleConfiguration
để cho phép tuỳ chỉnh gợn sóng theo từng thành phần / cây con bằng các giá trị cố định. Ví dụ: để thay đổi màu của một thành phần mà bạn không kiểm soát hoặc để tắt hiệu ứng gợn sóng cho một thành phần. Trong hầu hết các trường hợp, bạn nên sử dụng các giá trị mặc định: các API này là một lối thoát để tuỳ chỉnh các thành phần riêng lẻ / cây con bị giới hạn. Đối với các thay đổi rộng hơn và hệ thống thiết kế tuỳ chỉnh, bạn nên tạo gợn sóng của riêng mình bằngcreateRippleModifierNode
. (I7b5d6, b/298048146) - Thêm API gợn sóng mới trong material3 để thay thế
rememberRipple
không dùng nữa. Ngoài ra, hãy thêmCompositionLocal
,LocalUseFallbackRippleImplementation
tạm thời để chuyển các thành phần material3 về việc sử dụng các APIrememberRipple
/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ấpRippleTheme
tuỳ chỉnh. (I34cbc, b/298048146)
Sửa lỗi
- Xoá thành phần phụ bên trong
ModalBottomSheet
để cải thiện hiệu suất. Khắc phục lỗiModalBottomSheet
có thể gặp sự cố trong một số trường hợp cụ thể khi kết hợp vớiLookaheadScope
. (I2a198) - Xoá thành phần phụ bên trong
BottomSheetScaffold
để cải thiện hiệu suất. Khắc phục vấn đềBottomSheetScaffold
gặp sự cố trong một số trường hợp cụ thể khi kết hợp vớiLookaheadScope
. (Ie6401) - Căn chỉnh huy hiệu được điều chỉnh để gần hơn với tâm của nội dung neo so với góc trên cùng bên phải. (I18a28)
- Khắc phục vấn đề a11y với
DateRangePicker
, trong đó tiêu đề văn bản Tháng-Năm được truyền tải dưới dạng có thể thao tác cho người dùng trình đọc màn hình, Tiếp cận bằng công tắc và Tiếp cận bằng giọng nói. (I2ac55) - Khắc phục lỗi thứ tự tham số
mediumTopAppBarColors
. (Ibe64a)
Phiên bản 1.2
Phiên bản 1.2.1
Ngày 6 tháng 3 năm 2024
Phát hành androidx.compose.material3:material3-*:1.2.1
. Phiên bản 1.2.1 bao gồm các thay đổi sau.
Sửa lỗi
- Khiến trạng thái của Thanh trượt ổn định trở lại. Đặt lại
State.onValueChangeFinished
thành val. GóionValueChangeFinished
trongrememberUpdatedState
. (Ie8fd0, b/322269951) - Xoá
@Stable
khỏi các trạng thái củaSlider
vì chúng ta đang thay đổistate.onValueChangeFinished
thànhvar
. (I82ba1, b/322269951) - Sửa màu tuỳ chỉnh
NavigationBar
để sao chép từ màu mặc định. (80a779, b/326894020) - Khắc phục sự hồi quy trong
ExposedDropdownMenu
để có thể lấy tiêu điểm lại (3fcec1, b/323694447) - Khắc phục vấn đề lưu màu nút vào bộ nhớ đệm (3e5bbcb/327371655)
Phiên bản 1.2.0
Ngày 7 tháng 2 năm 2024
Phát hành androidx.compose.material3:material3-*:1.2.0
. Phiên bản 1.2.0 bao gồm các thay đổi sau.
Vấn đề đã biết
- Một lỗi kết xuất tương tác View-Compose đã được giới thiệu trong
PrimaryTabRow
như một phần của thay đổi cải thiện hiệu suất. Giải pháp là sử dụngTabRow
vớiTabRowDefaults.PrimaryIndicator
Thay đổi quan trọng kể từ phiên bản 1.1.0
Các thành phần mới của Material Design 3
- Kéo để làm mới
- Nút phân đoạn
Các điểm cải tiến đối với các thành phần Material Design 3 hiện có.
- Thanh ứng dụng ở dưới cùng (căn chỉnh RTL, tự động ẩn khi cuộn)
- Cập nhật giao diện thẻ
- Huy hiệu (cập nhật căn chỉnh)
Đã chuyển các API thử nghiệm lên phiên bản ổn định!
Cải thiện hiệu suất
- Vui lòng xem bài đăng trên blog này để biết thêm chi tiết!
Phiên bản 1.2.0-rc01
Ngày 24 tháng 1 năm 2024
Phát hành androidx.compose.material3:material3-*:1.2.0-rc01
. Phiên bản 1.2.0-rc01 bao gồm bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục lỗi thứ tự tham số
mediumTopAppBarColors
. (Ibe64a) - Khắc phục lỗi được đưa vào
1.2.0-beta02
trongCardDefaults.cardColors
không cập nhậtcontentColor
dựa trên giá trị tham sốcontainerColor
. (Iee041, b/319671246) - Khắc phục lỗi trong
disabledContentColor
được giới thiệu trong1.2.0-beta02
và thêm một số tính năng tối ưu hoá nhỏ. (I6dda1, b/318428829)
Phiên bản 1.2.0-beta02
Ngày 10 tháng 1 năm 2024
Phát hành androidx.compose.material3:material3-*:1.2.0-beta02
. Phiên bản 1.2.0-beta02 bao gồm các thay đổi sau.
Lỗi đã biết
- Theo mặc định, lỗi trong
IconButtonColors
sẽ gándisabledContentColor
cho alpha (0,38f) củaLocalContentColor
thay vìcontentColor
do người dùng chỉ định. Cách giải quyết là đặt rõ ràngdisabledContentColor
. Lỗi này sẽ được khắc phục trong bản phát hành tiếp theo.
Thay đổi về API
- Thêm khả năng bật con trỏ chú giải công cụ cho các API
Tooltip
thuần tuý. (Ibf767) SwipeToDismissState
,rememberSwipeToDismiss
vàSwipeToDismissValue
đều được đổi tên thành_SwipeToDismissBox_
. (I68d6d)
Sửa lỗi
- Sửa giá trị khoảng đệm cuối
ListItem
để phù hợp với thông số kỹ thuật. (Ibd68b, b/305342674) - Màu đường viền cho thẻ có đường viền hiện được liên kết chính xác với
OutlineVariant
. (I75480, b/310979715) - Màu động hiện lấy từ các vai trò màu do hệ thống xác định. Điều này giúp cải thiện độ tương phản cho nội dung hỗ trợ tiếp cận và điều chỉnh màu động cho phù hợp hơn với thông số kỹ thuật của Material. (I1de96)
- Khắc phục lỗi xử lý quay lại
ModalBottomSheet
trên Android T/13 trở lên khiandroid:enableOnBackInvokedCallback="true"
. (I728dc, b/306196110)
Phiên bản 1.2.0-beta01
Ngày 13 tháng 12 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-beta01
. Phiên bản 1.2.0-beta01 bao gồm các thay đổi sau.
Thay đổi về API
- Đánh dấu
TabIndicatorScope
là thử nghiệm. (I45c88) - Xoá các API thử nghiệm không dùng nữa cho chú giải công cụ. (I438cb)
- Thay đổi các phương thức nạp chồng
TabRow
mới để không sử dụng các thành phần kết hợp phụ. Điều này dẫn đến một cách khác để tạo các chỉ báoTabRow
bằng các đối tượng sửa đổi tuỳ chỉnh được cung cấp. (Ife741) - Ngừng sử dụng API
DismissDirection
vàDismissValue
. Các giá trị này đã được hợp nhất thànhSwipeToDismissValue
, trong đó các giá trị cho biết cả vị trí và hướng củaSwipeToDismissBox
.DismissState.progress
hiện được đánh dấu làFloatRange
giữa0.0
và1.0
. Xoá Trình tiết kiệm và Hàm khởi tạo không dùng nữa củaDismissState
. Thành phầnSwipeToDismiss
, trạng thái và đối tượng mặc định đã được đánh dấu là thử nghiệm. (Ib54f2)
Sửa lỗi
- Chỉ báo mặc định cho
PullToRefresh
hiện là mũi tên mở thay vì tam giác đặc. (I67be3)
Phiên bản 1.2.0-alpha12
Ngày 29 tháng 11 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-alpha12
. Phiên bản 1.2.0-alpha12 bao gồm các thay đổi sau.
Thay đổi về API
RangeSlider
hiện sử dụng một dải Kotlin (ví dụ:0f..1f
) thay vì lớp giá trịFloatRange
tuỳ chỉnh.SnapFlingBehavior.kt
hiện cũng sử dụng một dải Kotlin. (I025cb)- Đánh dấu các hàm nhà máy của đối tượng sửa đổi là
@Stable
. (Ib109f)
Phiên bản 1.2.0-alpha11
Ngày 15 tháng 11 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-alpha11
. Phiên bản 1.2.0-alpha11 bao gồm các thay đổi sau.
Tính năng mới
- Triển khai
PullToRefreshContainer
vàPullToRefreshState
, cùng nhau cung cấp tính năng kéo để làm mới trong Material3. (I16456, b/261760718)
Thay đổi về API
- Đánh dấu
SwipeToDismissBox
DismissDirection
vàDismissValue
là thử nghiệm. (I517b0) - Đổi tên
SwipeToDismiss
thànhSwipeToDismissBox
. Đổi tênbackground
thànhbackgroundContent
vàdismissContent
thành trailing lambdacontent
. (I7f4d3) - Đặt hàm khởi tạo cho
ChipElevation
vàSelectableChipElevation
ở chế độ công khai. (Ie0c48, b/308432421) - Thêm
ModalBottomSheetProperties
. Di chuyểnsecurePolicy
vàoModalBottomSheetProperties
. ThêmisFocusable
vàshouldDismissOnBackPress
vàoModalBottomSheetProperties
. Các boolean mới này giúp xác định cách xử lý sự kiện IME của bảng dưới cùng theo phương thức phương thức. (Iea56f, b/278216859) - Cập nhật trạng thái
RangeSlider
vàSlider
để xoáinitialOnValueChange
, tiền tố ban đầu và kdocs thích hợp. (I57d30) - Ngừng sử dụng lớp
ChipBorder
và các lệnh gọi hàm liên quan, thay vào đó, bạn nên sử dụng trực tiếpBorderStroke
. (I89cc2) - Các API chú thích của Foundation hiện là
@ExperimentalFoundationApi
. (I30b0b) TabRow
vàScrollableTabRow
không còn ngừng hoạt động nữa. Các biến thể Chính và Phụ mới được đánh dấu là thử nghiệm. (I0def6)- Bộ lọc và khối đầu vào hiện sử dụng trực tiếp
BorderStroke
. (I07a8d) SegmentedButton
hiện sử dụng trực tiếpBorderStroke
. (I89b9b)- Đổi tên hàm
AlertDialog
chung thànhBasicAlertDialog
và ngừng sử dụng hàm trước đó. (Idbe52) - Đổi tên API
SwipeToDismiss
thànhSwipeDismiss
và chuyển APISwipeDismiss
mới sang trạng thái ổn định. (I14cbe) - Thêm
tonalElevation
vàshadowElevation
vào các API chú giải công cụ. Ngoài ra, hãy chuyển các APITooltipBox
,PlainTooltip
vàRichTooltip
trở lại trạng thái thử nghiệm vì các API này vô tình được phát hành ở trạng thái ổn định. (If0f66, b/293939035) - Chuyển các API khối thử nghiệm lên phiên bản ổn định. (Iea2c3)
- Xoá chú thích
@ExperimentalMaterial3Api
khỏi Thẻ có thể nhấp của Material3. (I88dbf)
Sửa lỗi
- Khắc phục vấn đề
SwipeToDismiss
gặp sự cố trong một số trường hợp nhất định với bố cục Lookahead và Lazy được lồng. (Ica8d1, b/297226562)
Phiên bản 1.2.0-alpha10
Ngày 18 tháng 10 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-alpha10
. Phiên bản 1.2.0-alpha10 bao gồm các thay đổi sau.
Thay đổi về API
- Chuyển
Badge
vàBadgedBox
lên phiên bản ổn định. (I67f16, b/261565132) - Thêm
securePolicy
làm tham số vàoModalBottomSheet
để người dùng có thể xác định hành vi choWindowManager.LayoutParams.FLAG_SECURE
. (Icdac8, b/296250262) - Thêm các phương thức nạp chồng mới của
LinearProgressIndicator
vàCircularProgressIndicator
lấyprogress
làm lambda. Các phiên bản này sẽ có hiệu suất cao hơn các phiên bản trước. (I824e6, b/295616656) - Đổi tên
StandardSizeClasses
thànhAllSizeClasses
. (I8cb07) - Kết hợp các hàm tính toán của các lớp kích thước cửa sổ. (Iad935)
Sửa lỗi
- Khắc phục sự cố
DatePicker
khi nhấp nhanh vào các nút mũi tên điều hướng khi tháng hiển thị ở cạnh phạm vi năm được phép. (I46f36, b/290954897, b/297002119) - [Thanh điều hướng/dải điều hướng] Hỗ trợ màu trong suốt cho chỉ báo. (Ie0a9b, b/267289987)
Phiên bản 1.2.0-alpha09
Ngày 4 tháng 10 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-alpha09
. Phiên bản 1.2.0-alpha09 bao gồm các thay đổi sau.
Thay đổi về API
- Di chuyển
ModalNavigationDrawer
vàDismissibleNavigationDrawer
để sử dụng các APIAnchoredDraggable
mới.animateTo
củaDrawerState
đã được thay thế bằng các phương thức mở và đóng, đồng thời độ dời hiện được hiển thị dưới dạng float thay vì đối tượng trạng thái. Bạn có thể truy cập trực tiếp vào độ dời thông quacurrentOffset
. (I0a72c) - Các hàm không phải hàm có khả năng kết hợp đã được thêm để tạo trực tiếp
DatePickerState
vàDateRangePickerState
. Bạn có thể sử dụng các hàm này thay cho hàmrememberDatePickerState
vàrememberDateRangePickerState
của Thành phần kết hợp khi cần. (I70326, b/291524052) TabRows
cố định và có thể cuộn hiện có các biến thể Chính và Phụ. Các giá trị này liên kết chính xác với màu sắc và hành vi của chỉ báo như được xác định trong Material3.PrimaryScrollableTabRow
vàSecondaryScrollableTabRow
hiện hiển thị trạng thái cuộn. (Iec8f5, b/260572337)- Thêm tham số
sheetMaxWidth
mới mà nhà phát triển có thể đặt để chỉ định chiều rộng tối đa mà bảng sẽ trải dài. Bạn có thể truyền Dp.Unspecified cho tham số này nếu muốn một trang tính trải dài toàn bộ chiều rộng màn hình. (Ifb7c9, b/266697696) - Thêm lại các API
PlainTooltipBox
vàRichTooltipBox
dưới dạng phương thức không dùng nữa. (I246fa)
Sửa lỗi
- Khắc phục sự cố khi
DatePicker
được khởi tạo bằngDatePickerFormatter
có một số khung ngày nhất định vẫn giữ nguyên khi chuyển đổi sang mẫu ngày (chẳng hạn như YY). (I01f29)
Phiên bản 1.2.0-alpha08
Ngày 20 tháng 9 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-alpha08
. Phiên bản 1.2.0-alpha08 bao gồm các thay đổi sau.
Thay đổi có thể gây lỗi về hành vi
ColorScheme
hiện là Immutable, khiến các bản 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 nhiều trường hợp sử dụng tiêu chuẩn hơn. (Ic447d, b/297212873)- Tonal Elevation không còn tạo hiệu ứng ảnh động ở các trạng thái tương tác khác nhau để khớp với thông số kỹ thuật. (Icdd12)
Thay đổi về API
- Thêm một
BottomAppBar
mới lấy tham số làBottomAppBarScrollBehavior
để tự động ẩn khi cuộn nội dung. Ngoài ra, chúng tôi cũng thêmFabPosition.EndOverlay
để cho phép FAB phủ lên thanh ứng dụng dưới cùng trong ngăn xếp thay vì được neo phía trên thanh ứng dụng đó. (Iecb47) - Thêm một thành phần Nhãn đơn giản được tạo dựa trên
BasicTooltipBox
. Thành phần này sẽ không đóng khi nhấn vào bên ngoài ranh giới của nhãn. (I821f9)
Sửa lỗi
- Xoá việc sử dụng
rememberSaveable
cho chú giải công cụ. (Icc131, b/299500338) - Giới thiệu một cờ tạm thời để kiểm soát việc Scaffold có đo lường các thành phần con trong quá trình đo lường hay trong quá trình đặt hay không. Theo mặc định, giá trị này sẽ được đo lường theo đơn vị đo lường. Nếu bạn gặp vấn đề với hành vi mới này, vui lòng báo cáo vấn đề. (I0b354)
- Khắc phục lỗi Edge to Edge theo chiều ngang trong
BottomSheet
bằng cách sử dụng thông tin đo lường chính xác cho chiều rộng màn hình thiết bị. (I1df0c, b/299058752) - Khắc phục lỗi
ModalBottomSheet
không gọionDismissedRequest
khi đóng bằng cách vuốt xuống trên trang tính. (Idfdd8)
Phiên bản 1.2.0-alpha07
Ngày 6 tháng 9 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-alpha07
. Phiên bản 1.2.0-alpha07 bao gồm các thay đổi sau.
Tính năng mới
- Tính năng hỗ trợ tự động phản chiếu biểu tượng đã được thêm vào
compose material 1.6.0-alpha05
, vui lòng xem ghi chú phát hành để biết thông tin chi tiết về tính năng tự động phản chiếu biểu tượng.
Thay đổi về API
SliderState
triển khaiDraggableState
(I9b116)- Thay đổi hình dạng thành tham số bắt buộc. Đổi tên
position
thànhindex
trong hàm trợ giúp hình dạng. (I34941) - Cập nhật
DatePicker
formatWithSkeleton
để thêm một bản đồ được dùng làm bộ nhớ đệm nhằm cải thiện hiệu suất. (I3195f) - Thêm
BasicTooltipBox
vàocompose.foundation
và cập nhậtPlainTooltipBox
vàRichTooltipBox
để sử dụngTooltipBox
với các thành phần kết hợpPlainTooltip
vàRichTooltip
mới. (I79e1d)
Sửa lỗi
dynamicLightColorScheme
vàdynamicDarkColorScheme
hiện trả về màu sắc có độ sắc độ cao hơn cho vai trò bề mặt vàsurfaceContainer
. (I5e901)- Khắc phục vấn đề một số thành phần sử dụng Cấu trúc phụ (ví dụ:
BottomSheetScaffold
) bên trong Scaffold bên trongLookaheadScope
đang cố gắng đọc kích thước của chúng quá sớm. (I297b4, I871f1, b/295536718)
Phiên bản 1.2.0-alpha06
Ngày 23 tháng 8 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-alpha06
. Phiên bản 1.2.0-alpha06 bao gồm các thay đổi sau.
Sửa lỗi
- Sửa lỗi tính toán
offset
củaDropdownMenu
để độ dời x chỉ phụ thuộc vào hướng bố cục cục bộ và độ dời y sẽ không còn bị đảo ngược khi trình đơn nằm gần cuối màn hình. (Iccc74, b/294103942) - Sửa lỗi tính toán
offset
củaDropdownMenu
để độ dời x chỉ phụ thuộc vào hướng bố cục cục bộ và độ dời y sẽ không còn bị đảo ngược khi trình đơn nằm gần cuối màn hình. (Ib87a2, b/294103942)
Phiên bản 1.2.0-alpha05
Ngày 9 tháng 8 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-alpha05
. Phiên bản 1.2.0-alpha05 bao gồm các thay đổi sau.
Thay đổi về API
- Cập nhật màu Hộp đánh dấu và
TriStateCheckbox
.CheckboxDefaults.colors()
disabledUncheckedColor
hiện chỉ ảnh hưởng đến đường viền của hộp đánh dấu. Các trường hợp đặc biệt yêu cầu bạn đặt màu hộp nội bộ khi tắt và bỏ đánh dấu yêu cầu một thực thể được tạo tuỳ chỉnh củaCheckboxColors
với các giá trị màu mong muốn. (I77d17, b/291943198)
Phiên bản 1.2.0-alpha04
Ngày 26 tháng 7 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-alpha04
. Phiên bản 1.2.0-alpha04 bao gồm các thay đổi sau.
Tính năng mới
- API nút phân đoạn thử nghiệm (Ifc8fb)
- Các đường phân chia hiện có một tham số để kiểm soát hướng nhằm hỗ trợ các đường phân chia dọc. (I4c899, b/288438593)
Thay đổi về API
- Chúng tôi sẽ di chuyển phần phụ thuộc mật độ sang cấp thành phần. Điều này áp dụng cho các thành phần sau:
SwipeToDismiss
và các thành phần dựa trên Trang tính. Vui lòng sử dụng phương thức nạp chồng mới được cung cấp, trong đó mật độ là một tham số. (I1846e) - Các chú thích bổ sung để chỉ định dữ liệu đầu vào được phép cho các thành phần kết hợp (Ief234)
- Thêm tham số biểu tượng vào nút phân đoạn, phân tách ngữ nghĩa để có thể chọn nút phân đoạn nhằm triển khai chế độ chọn một mục và bật/tắt để triển khai chế độ chọn nhiều mục, tương ứng với
SelectableSegmentedButtonRow
vàToggelableSegmentedButtonRow
. (I38740) - Đổi tên Divider thành
HorizontalDivider
. Thêm chức năngVerticalDivider
. (I5975c) - Thay đổi việc sử dụng
ClosedFloatingPointRange
choFloatRange
có trọng lượng nhẹ hơn trong các API Material3 thử nghiệm để giảm thiểu việc tự động đóng hộp. (I4aab5) - Thêm căn chỉnh Start mới cho
FabPosition
(Ib7aea, b/170592777)
Sửa lỗi
ModalBottomSheet
tuân theo hướng bố cục cục bộ. (Ib4f44, b/285628622)
Phiên bản 1.2.0-alpha03
Ngày 21 tháng 6 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-alpha03
. Phiên bản 1.2.0-alpha03 bao gồm các thay đổi sau.
Thay đổi về hành vi
includeFontPadding
hiện làfalse
theo mặc định trong kiểu chữ Material 3. Kiểu chiều cao dòng mặc định cũng đã được thay đổi thànhTrim.None
vàAlignment.Center
, đồng thờilineHeight
rõ ràng (trong sp) đã được thêm vàoTextStyle
củaTypography
. Hãy tham khảo tài liệu API nếu bạn muốn tuỳ chỉnh các giá trị này và xem bài đăng trên blog để biết nội dung giải thích chuyên sâu về những thay đổi này. (I6266f, Icabc3)
Tính năng mới
- Thêm một phương thức nạp chồng cho
RangeSlider
là phiên bản có trạng thái của thành phần. TạoRangeSliderState
chứa tất cả thông tin cho kênh đang hoạt động hiện tại, thông tin đo lường các thành phần củaRangeSlider
, cũng như logic kéo và cử chỉ. (I8c270) - Thanh tìm kiếm hiện hỗ trợ bóng đổ thông qua tham số
shadowElevation
mới thêm. (Ia5369, b/271040353) ColorScheme
hiện hỗ trợ các vai tròSurfaceContainer
mới.- Bạn hiện có thể tắt lớp phủ độ cao sắc độ bề mặt bằng thành phần cục bộ
LocalTonalElevationEnabled
. (Ic203c, b/277774590)
Thay đổi về API
- Mở hàm khởi tạo màu thành phần. (I8c4a6)
- Thêm thông số có thể lấy tiêu điểm vào cả hai API chú giải công cụ để nhà phát triển có thể cho phép chú giải công cụ sử dụng các sự kiện chạm hay không. Hãy cẩn thận vì việc này có thể làm gián đoạn tính năng tự động di chuyển tiêu điểm hỗ trợ tiếp cận. (Ie32d8)
- Tối ưu hoá khả năng hỗ trợ tiếp cận để phân bổ hiệu suất và bộ nhớ. (Iede48)
- Hiển thị
DefaultSizeClasses
và tạoStandardSizeClasses
choWindowSizeClasses
(I91838) - thay đổi
WindowWidth/HeightSizeClass
thành các lớp giá trị float (Ie686e)
Sửa lỗi
- Tham số
contentWindowInsets
của Scaffold hiện tuân theo các phần lồng ghép cửa sổ đã sử dụng. Xin lưu ý rằng hành vi của khoảng đệm nội dung dựa trêntopBar
vàbottomBar
vẫn không thay đổi khi các tham số này được cung cấp. (I08b73, b/264601542) - Sửa căn chỉnh của thanh ứng dụng ở giữa trên cùng để đảm bảo rằng tiêu đề dài không hiển thị trên các biểu tượng hành động hoặc biểu tượng điều hướng. (I4369f, b/236994621)
- Vị trí thẻ hiện thực thi chiều rộng nội dung tối thiểu là 24.dp. Điều này cung cấp một mục tiêu chạm có thể truy cập được cho các chỉ báo thẻ. (Id8861)
- Bảng màu động từ
dynamicLightColorScheme
vàdynamicDarkColorScheme
hiện hỗ trợ các vai trò mới của giao diện. (I1252e) - Cập nhật căn chỉnh thông báo huy hiệu để không bị cắt khi va chạm với thành phần cấp trên cùng. (Idf75a)
Phiên bản 1.2.0-alpha02
Ngày 24 tháng 5 năm 2023
Phát hành androidx.compose.material3:material3-*:1.2.0-alpha02
. Phiên bản 1.2.0-alpha02 bao gồm các thay đổi sau.
Thay đổi về API
- Thêm tham số phần lồng ghép cửa sổ vào
ModalBottomSheet
.- Giờ đây, bạn có thể vẽ màn chắn cho
ModalBottomSheet
phía sau thanh trạng thái vớiwindowInsets
được đặt thành 0 - Cập nhật chức năng
ModalBottomSheet
mặc định để nằm ngoài các thanh hệ thống, bao gồm cả thanh điều hướng - Tính năng xử lý phần lồng ghép thanh trạng thái được cung cấp bằng tay cầm kéo ở chế độ tràn viền.
BottomSheetDefaults
bao gồm các phần lồng ghép cửa sổ choBottomSheetWindow
. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
- Giờ đây, bạn có thể vẽ màn chắn cho
- Ngừng sử dụng
Indicator
và thêmPrimary
/SecondaryIndicator
để phù hợp với thông số kỹ thuật của M3.PrimaryIndicator
khớp với chiều rộng của nội dung thẻ, trong khiSecondaryIndicator
trải dài theo chiều rộng có sẵn.SecondaryIndicator
tương đương vớiIndicator
hiện không dùng nữa và có thể thay thế trực tiếp. (I27604) - Thêm một tuỳ chọn để truyền vào
ScrollState
khi tạoDropdownMenu
hoặcExposedDropdownMenu
để kiểm soát trạng thái cuộn dọc của các mục trong trình đơn hiển thị. (Ia0734, b/185304441) - Thêm một phương thức nạp chồng cho
Slider
là phiên bản có trạng thái của thành phần. TạoSliderState
chứa tất cả thông tin cho kênh đang hoạt động hiện tại, thông tin đo lường các thành phần củaSlider
, cũng như logic kéo và cử chỉ. (I124a5) - Đổi tên thuộc tính Ngữ nghĩa
isContainer
thànhisTraversalGroup
(I121f6) - Thêm
TextStyle.merge(...)
được tối ưu hoá với danh sách tham số đầy đủ. (Iad234, b/246961787) - Đặt
TooltipState
,RichTooltipState
vàPlainTooltipState
làm giao diện công khai. ThêmRichTooltipStateImpl
vàPlainTooltipStateImpl
cho các trạng thái mặc định. Thêm các hàmremember*State
để lấy các trạng thái đã triển khai này. XoáTooltipSync
và thay bằngTooltipDefault.GlobalMutatorMutex
. (I7813d) - Cập nhật
DatePickerColors
để thêm các tuỳ chọn tuỳ chỉnh khác cho màu của đường phân chia bộ chọn ngày, điều hướng và trường nhập văn bản. (I1a685, b/274626815) DatePickerState
vàDateRangePickerState
hiện là các giao diện công khai với các phương thức triển khai mặc định có thể được truy xuất bằngrememberDatePickerState
vàrememberDateRangePickerState
. (I71c52)- Xoá
dateValidator
khỏiDatePicker
vàDateRangePicker
, đồng thời giới thiệu giao diệnSelectableDates
có thể được đặt trên trạng thái để kiểm soát những ngày hoặc năm có thể chọn trong giao diện người dùng. (Ic2fc6) - Xoá
TimePicker
khỏi API ổn định, dự kiến sẽ có thêm thay đổi trong API trạng thái (I3f39a) ModalBottomSheet
chỉ được chuyển sang Android. Bạn không nên sử dụngModalBottomSheet
trên máy tính và chức năng này không được duy trì tích cực. (Ib3778)
Sửa lỗi
- Khắc phục thao tác đóng
AlertDialog
để xuất hiện bên dưới thao tác xác nhận khi các thao tác xếp chồng lên nhau để vừa với chiều rộng của hộp thoại. Bản sửa lỗi này điều chỉnh cách triển khai cho phù hợp với thông số kỹ thuật của Material Design. (I029de, b/235454277) - Khắc phục lỗi trong
ListItem
sử dụng khoảng đệm không chính xác cho các mục ba dòng. (I6e235) ModalBottomSheet
hiện có thể hiển thị bàn phím IME (Idc508, b/262140644, b/268380384, b/272483584)
Phiên bản 1.2.0-alpha01
Ngày 10 tháng 5 năm 2023
Phát hành androidx.compose.material3:material3:1.2.0-alpha01
và androidx.compose.material3:material3-window-size-class:1.2.0-alpha01
. Phiên bản 1.2.0-alpha01 bao gồm các thay đổi sau.
Phiên bản 1.1
Phiên bản 1.1.2
Ngày 20 tháng 9 năm 2023
Phát hành androidx.compose.material3:material3:1.1.2
và androidx.compose.material3:material3-window-size-class:1.1.2
. Phiên bản 1.1.2 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục lỗi đối tượng sửa đổi được truyền không chính xác đến hai thành phần kết hợp. (b/282761472)
- Khắc phục lỗi
TimePickerState
trả về giờ không chính xác khi được khởi tạo bằng 23 giờ. (b/278242122) - Sửa trạng thái bật/tắt ban đầu để xác thực buổi trưa và phút. (b/269768197, b/282790635)
- Khắc phục lỗi
state.hour
trả về giá trị không chính xác cho 23:00. (b/282761472, b/278242122)
Phiên bản 1.1.1
Ngày 21 tháng 6 năm 2023
Phát hành androidx.compose.material3:material3:1.1.1
và androidx.compose.material3:material3-window-size-class:1.1.1
. Phiên bản 1.1.1 bao gồm các thay đổi sau.
Sửa lỗi
- Thêm lệnh gọi cho
ModalBottomSheet
mà không có tham sốwindowInset
để đảm bảo khả năng tương thích nhị phân. (Ib7959) - Thêm tham số phần lồng ghép cửa sổ vào
ModalBottomSheet
.- Giờ đây, bạn có thể vẽ màn chắn cho
ModalBottomSheet
phía sau thanh trạng thái vớiwindowInsets
được đặt thành 0 - Cập nhật chức năng
ModalBottomSheet
mặc định để nằm ngoài các thanh hệ thống, bao gồm cả thanh điều hướng - Tính năng xử lý phần lồng ghép thanh trạng thái được cung cấp bằng tay cầm kéo ở chế độ tràn viền.
BottomSheetDefaults
bao gồm các phần lồng ghép cửa sổ choBottomSheetWindow
. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
- Giờ đây, bạn có thể vẽ màn chắn cho
Phiên bản 1.1.0
Ngày 10 tháng 5 năm 2023
Phát hành androidx.compose.material3:material3:1.1.0
và androidx.compose.material3:material3-window-size-class:1.1.0
. Phiên bản 1.1.0 bao gồm các thay đổi sau.
Các tính năng chính của phiên bản 1.1.0
Các thành phần Material Design 3 mới
Các điểm cải tiến đối với các thành phần Material Design 3 hiện có.
Đã nâng cấp các API thử nghiệm lên phiên bản ổn định!
Vui lòng xem bài đăng trên blog này để biết thêm chi tiết!
Phiên bản 1.1.0-rc01
Ngày 19 tháng 4 năm 2023
Phát hành androidx.compose.material3:material3:1.1.0-rc01
và androidx.compose.material3:material3-window-size-class:1.1.0-rc01
. Phiên bản 1.1.0-rc01 bao gồm các thay đổi sau.
Thay đổi về API
- Xoá
TimePicker
khỏi API ổn định, dự kiến sẽ có thêm thay đổi trong API trạng thái (I3f39a) ModalBottomSheet
chỉ được chuyển sang Android. Bạn không nên sử dụngModalBottomSheet
trên máy tính và chức năng này không được duy trì tích cực. (Ib3778)
Phiên bản 1.1.0-beta02
Ngày 5 tháng 4 năm 2023
Phát hành androidx.compose.material3:material3:1.1.0-beta02
và androidx.compose.material3:material3-window-size-class:1.1.0-beta02
. Phiên bản 1.1.0-beta02 bao gồm các thay đổi sau.
Thay đổi về API
SheetState
hiện có tham sốskipHiddenState
không bắt buộcrememberStandardBottomSheetState
hiện có tham sốskipHiddenState
không bắt buộcBottomSheetScaffold
hiện có một neo ẩn được xác định, mặc dù neo này bị tắt theo mặc định- Đã cập nhật tài liệu
SheetState.requireOffset
BottomSheetDefaults.MinimizedShape
được đổi tên thànhBottomSheetDefaults.HiddenShape
(I839f4, b/273870234)
Sửa lỗi
- Không chuyển mặt đồng hồ từ giờ sang phút khi chế độ khám phá bằng cách chạm đang bật. (I717d0)
- Ngữ nghĩa của tay cầm kéo
ModalBottomSheet
vàBottomSheetScaffold
hiện đã được hợp nhất. (I05afb) - Phương thức sửa đổi
BottomSheetScaffold
, tham sốcontainerColor
vàcontentColor
hiện chỉ ảnh hưởng đến nội dung. (I992cb) BottomSheetScaffold nestedScroll
cho nội dung trang tính hiện triển khai các thao tác hất. (I992cb)
Phiên bản 1.1.0-beta01
Ngày 22 tháng 3 năm 2023
Phát hành androidx.compose.material3:material3:1.1.0-beta01
và androidx.compose.material3:material3-window-size-class:1.1.0-beta01
. Phiên bản 1.1.0-beta01 bao gồm các thay đổi sau.
Thay đổi về API
- Thêm tham số loại bố cục vào thành phần kết hợp
TimePicker
. Cho phép sử dụng nhiều bố cục, tuỳ thuộc vào cấu hình màn hình (Ia0e16) SearchBarDefaults
đã được đánh dấu là thử nghiệm. (I65561)- Thêm độ cao bóng vào
BottomSheetScaffold
(I94e0f) - Thêm tính năng hỗ trợ hiển thị bộ chọn ngày mà không có phần tiêu đề. Thay đổi API để cho phép truyền dòng tiêu đề rỗng khi tạo bộ chọn ngày. Giờ đây, bạn có thể truyền dòng tiêu đề, tiêu đề và
showToggleMode = false
rỗng để hiển thị bộ chọn không có giao diện người dùng. (Id3f3a, b/266132421, b/267194809)
Sửa lỗi
- Giờ đây, thanh tìm kiếm sẽ tự động xoá tiêu điểm khi không hoạt động. (I22a7c, b/261444487)
- Cập nhật
DateRangePicker
để cho phép chọn một phạm vi có cùng ngày bắt đầu và ngày kết thúc. (I16529, b/272882497) - Giờ đây, các trường văn bản sẽ định vị đúng các phần tử văn bản khi cỡ chữ nhỏ hơn dự kiến. Điều này có thể dẫn đến việc thay đổi một vài pixel trong ứng dụng dựa trên chế độ cài đặt phông chữ và tập lệnh. (I8b8d0)
- Các thao tác ngữ nghĩa trên bảng dưới cùng hiện có nhãn. (I277b0)
Phiên bản 1.1.0-alpha08
Ngày 8 tháng 3 năm 2023
Phát hành androidx.compose.material3:material3:1.1.0-alpha08
và androidx.compose.material3:material3-window-size-class:1.1.0-alpha08
. Phiên bản 1.1.0-alpha08 bao gồm các thay đổi sau.
Tính năng mới
- Thêm tính năng hỗ trợ cho
BottomSheetScaffold
vàBottomSheetScaffoldState
. (I063d4)
Thay đổi về API
- Thêm chức năng vào
DatePickerState
vàDateRangePickerState
để cho phép đặt ngày sau khi tạo trạng thái ban đầu, cũng như đặt lại lựa chọn bằng cách đặt dấu thời gian rỗng. Bạn nên thận trọng khi đặt ngày theo cách thủ công và hàmsetSelection
mới sẽ gửi một ngoại lệ trong trường hợp ngày được cung cấp không đáp ứng được điều kiện tiên quyết (xem tài liệu). (Ifa645, b/268609314, b/270427389) - Đổi tên
SheetValue
đã thu gọn thànhPartiallyExpanded
để mô tả hành vi trong trạng thái này một cách chính xác và linh hoạt hơn. (Ia1491) - Cập nhật tên tham số
ListItem
thành _content thay vì _text. Phương thức getter mặc định hiện làReadOnlyComposables
nếu phù hợp. (I69a25) - Chuyển API Surface tương tác từ trạng thái thử nghiệm sang trạng thái chính thức. (I90d59, b/261561812)
Sửa lỗi
- Khắc phục vấn đề khi trạng thái
HalfExpanded
củaModalBottomSheet
được tính toán không chính xác và trang tính sẽ xuất hiện ở dạng nổi. (I45e84, b/268411386) - Thêm tính năng kiểm tra
confirmValueChange
vào thao tác nhấn vào scrim choModalBottomSheet
. (I2311a, b/270425759) - Di chuyển các thao tác
BottomSheet
ngữ nghĩa đến tay cầm kéo. (I158ba) ModalBottomSheet
hiện ra lệnh tập trung vào việc khởi chạy, xử lý nút quay lại. (I4d2ab)ModalBottomSheet onDismissRequest
hiện cũng được xử lý trong các thao tác cuộn lồng nhau. (I655c5, b/268433166)
Phiên bản 1.1.0-alpha07
Ngày 22 tháng 2 năm 2023
Phát hành androidx.compose.material3:material3:1.1.0-alpha07
và androidx.compose.material3:material3-window-size-class:1.1.0-alpha07
. Phiên bản 1.1.0-alpha07 bao gồm các thay đổi sau.
Tính năng mới
- Thêm thành phần kết hợp Time Input (Nhập thời gian) hoạt động với
rememberTimePickerState()
. Thành phần này sẽ tuân theo các thông số kỹ thuật của M3 đối với chế độ nhập thời gian (Ia4fab) - Thêm API
DateRangePicker
của Material 3 để chọn phạm vi ngày. (I7a6c3, b/267194809) - Hỗ trợ thêm chế độ nhập của Material 3 để chọn phạm vi ngày thông qua API
DateRangePicker
. (Ifdbc4) - Màu trường văn bản hiện cho phép tuỳ chỉnh:
- Màu trường nhập dữ liệu và văn bản giữ chỗ dựa trên trạng thái tiêu điểm cũng như trạng thái lỗi. Đổi tên tham số
textColor
thànhunfocusedTextColor
vàplaceholderColor
thànhunfocusedPlaceholderColor
. - Màu vùng chứa cho các trường văn bản đã điền dựa trên trạng thái lỗi với tham số
errorContainerColor
mới.
- Màu trường nhập dữ liệu và văn bản giữ chỗ dựa trên trạng thái tiêu điểm cũng như trạng thái lỗi. Đổi tên tham số
- Cập nhật màu trường văn bản hiển thị trên trình đơn thả xuống với các tham số để hỗ trợ API tiền tố và hậu tố mới. (I9c8b4, b/254284181, b/264766350)
Thay đổi về API
- Khôi phục một số phiên bản của Slider API (API Thanh trượt) và xoá các phương thức nạp chồng Thanh trượt dư thừa được áp dụng cho Thanh trượt thử nghiệm mới bằng thumb cũng như track tuỳ chỉnh. Chuyển
RangeSlider
thành phiên bản ổn định. (Ie8fbd) - Đổi tên
defaultElevation
thànhelevation
trong hàm độ cao của khối. (I0f872) - Các API trường văn bản sau đây của Material 3 không còn ở trạng thái thử nghiệm nữa:
TextField
,OutlinedTextField
,textFieldWithLabelPadding
,textFieldWithoutLabelPadding
,outlinedTextFieldPadding
. (Ieb5c0, b/261561819) TimePickers
is24Hour
dùng chế độ cài đặt hệ thống (I18856)- Xoá chú giải thử nghiệm khỏi Scaffold API. (Ibb51e, b/261565765, b/261436953)
Sửa lỗi
- Hình dạng mặc định của
ModalBottomSheet
hiện luôn làSheetDefaults.ExpandedShape
. (I0dfca) - Cải thiện khả năng hỗ trợ tiếp cận cho
DatePicker
vàDateRangePicker
của Material 3. (I5087e) - Khắc phục lỗi khi giới hạn chiều cao tối đa được truyền tải và có thể gặp sự cố. (I30d8c)
- Xoá vai trò ngữ nghĩa khỏi các nền tảng có thể nhấp và chọn, những thành phần đã cập nhật (sử dụng các vai trò đó để đặt vai trò bằng modifier.semantics) (I793d9)
Phiên bản 1.1.0-alpha06
Ngày 8 tháng 2 năm 2023
Phát hành androidx.compose.material3:material3:1.1.0-alpha06
và androidx.compose.material3:material3-window-size-class:1.1.0-alpha06
. Phiên bản 1.1.0-alpha06 bao gồm các thay đổi sau.
Tính năng mới
- Các trường văn bản hiện hỗ trợ văn bản tiền tố và hậu tố (Ia8578, b/179884561)
- Thêm hàm
TimePicker
để hiển thị bộ chọn giờ tuân theo thông số kỹ thuật của Material 3. Hàm này được dùng kết hợp vớiTimePickerState
và phương thứcrememberTimePickerState
tiện lợi (I71910) - Nhập ngày hiện là chế độ hiển thị tại
DatePicker
. Hỗ trợ thêm việc chuyển đổi giữa bộ chọn ngày và chế độ nhập ngày. (Ieeff7) - Thêm API cho
RichTextTooltips
. (I58ef3) - Triển khai bảng dưới cùng theo mô-đun cho Material 3, bao gồm
ModalBottomSheet
vàModalBottomSheetDefaults
. Đồng thời, ra mắtSheetState
vàrememberSheetState
có thể dùng cho các thành phần bảng sau này. (I0853a, b/244189383)
Các thay đổi về API
- Ổn định API
showSnackbar
(I195c2, b/261424370) - Ổn định các API cho khối hỗ trợ và khối đề xuất (Ibb67b, b/261424370)
- Chuyển API
ListItem
,ListItemDefaults
vàListItemColors
thành phiên bản không thử nghiệm (I7e7fa, b/261438882) - Chuyển
SliderPositions
,SliderDefaults.Thumb
vàSliderDefaults.Track
thành phiên bản ổn định, thêm các APISlider
vàRangeSlider
phiên bản không thử nghiệm có chứa hình thu nhỏ cũng như kênh tuỳ chỉnh. Đồng thời, ngừng sử dụng các APISlider
vàRangeSlider
trước đây. (Ie5ea6, b/261566890) - Đặt
Modifier.tooltipAnchor()
ở chế độ công khai để các nhà phát triển có thể truyền nó vào điểm neo nhằm cho biết chú giải công cụ sẽ hiển thị khi nhấn và giữ. Cập nhật APIPlainTooltipBox
đểTooltipState
không còn rỗng nữa và hiện có giá trị mặc định. (Ie2fb7) - Đánh dấu
ProgressIndicatorDefaults.circularTrackColor
là@Composable
để đảm bảo tính nhất quán. (Id29cc) - Khôi phục phương thức getter
LocalMinimuTouchTargetEnforcement
của thuộc tính, đồng thời đánh dấu phương thức này là không dùng nữa và chuyển hướng đếnLocalMinimumInteractiveComponentEnforcement
. (I60dd5)
Phiên bản 1.1.0-alpha05
Ngày 26 tháng 1 năm 2023
Phát hành androidx.compose.material3:material3:1.1.0-alpha05
và androidx.compose.material3:material3-window-size-class:1.1.0-alpha05
. Phiên bản 1.1.0-alpha05 bao gồm các thay đổi sau.
Tính năng mới
DatePickerDialog
và hỗ trợ tiếp cận- Đã thêm thumb và track tuỳ chỉnh vào
RangeSlider
.
Thông tin cập nhật về phần phụ thuộc
Compose UI
vàCompose Material
hiện phụ thuộc vào Lifecycle 2.6.0.
Phiên bản 1.1.0-alpha04
Ngày 11 tháng 1 năm 2023
Phát hành androidx.compose.material3:material3:1.1.0-alpha04
và androidx.compose.material3:material3-window-size-class:1.1.0-alpha04
. Phiên bản 1.1.0-alpha04 bao gồm các thay đổi sau.
Tính năng mới
- API
DatePicker
ban đầu để chọn một ngày qua giao diện người dùng của lịch. API này vẫn đang trong quá trình thay đổi. (I722b9) - Hỗ trợ thêm các chú giải công cụ đơn giản thông qua
PlainTooltipBox
. (I0cdfb) - Thanh tìm kiếm (Iad128)
SwipeToDismiss
(I458a8, b/242889540)
Các thay đổi về API
- Thêm thuộc tính ngữ nghĩa
IsContainer
trên Nền tảng. Thuộc tính này sẽ được dùng cho một thay đổi trong tương lai để xác định thứ tự truyền tải dựa trên ý nghĩa ngữ nghĩa của các phần tử, chẳng hạn như nền tảng. (I63379) - Đánh dấu các API liên quan đến ngăn điều hướng là ổn định. (Iab01e, b/261439597)
- Thêm tham số màu theo dõi cho các chỉ báo tiến trình vòng tròn và tham số giới hạn nét cho cả chỉ báo tiến trình vòng tròn và tuyến tính. (Ie668c, b/216325962, b/222964817)
- Thêm tính chất rỗng của kiểu dữ liệu trả về của các hàm ẩn không dùng nữa (Ibf7b0)
- Thêm
Modifier.minimumInteractiveComponentSize
. Bạn có thể sử dụng thuộc tính này để đặt trước kích thước tối thiểu là 48 dp để phân biệt các lượt tương tác chạm nếu phần tử này có kích thước nhỏ hơn. (I33f58, b/258495559) - Thêm API thử nghiệm cho thành phần kết hợp
AlertDialog
có vùng nội dung. (Iec4a2)
Sửa lỗi
- Tiến trình cho các chỉ báo tiến trình hiện được giới hạn đúng với phạm vi dự kiến. (I8a7eb, b/262262727)
Vấn đề đã biết
- Khi cập nhật từ
androidx.compose.foundation:1.4.0-alpha03
lênandroidx.compose.foundation:1.4.0-alpha04
, bạn có thể gặp lỗijava.lang.NoSuchFieldError
. Đây là nơi vấn đề được báo cáo ban đầu. Chúng tôi đã gửi một bản sửa lỗi và bản sửa lỗi này sẽ có trong bản cập nhật Compose tiếp theo. Để giải quyết tạm thời vấn đề này, hãy cập nhật thư việnandroidx.compose.material
vàandroidx.compose.material3
lên phiên bản mới nhất (1.1.0-alpha04) hoặc hạ cấpandroidx.compose.foundation
xuống 1.4.0-alpha03.
Phiên bản 1.1.0-alpha03
Ngày 7 tháng 12 năm 2022
Phát hành androidx.compose.material3:material3:1.1.0-alpha03
và androidx.compose.material3:material3-window-size-class:1.1.0-alpha03
. Phiên bản 1.1.0-alpha03 bao gồm các thay đổi sau.
Các thay đổi về API
- Đổi tên
consumedWindowInsets()
thànhconsumeWindowInsets()
vàwithConsumedWindowInsets()
thànhonConsumedWindowInsetsChanged()
rồi đặt Đối tượng sửa đổi ở chế độ công khai. (Ie44e1) - Thêm khoảng đệm nội dung mặc định mới cho nút văn bản với biểu tượng sẽ sử dụng. (I8f662)
- Thêm màu bị vô hiệu hoá cho thanh điều hướng và dải điều hướng. (Ia7892, b/258867034)
- Thêm Modifier API để truy vấn thông tin cuộn của đối tượng cấp trên. (I2ba9d, b/203141462)
- Dùng trong
Clickable
để trì hoãn đúng cách thao tác tương tác nhấn, khi các cử chỉ có thể trở thành sự kiện cuộn. - Sửa lỗi khiến
Clickables
không trì hoãn đúng cách các hiệu ứng gợn sóng khi được dùng bên trong mộtScrollable ViewGroup
. - Cập nhật các Ngăn và Trang tính để trì hoãn đúng cách thao tác nhấn trong trường hợp các cử chỉ có thể trở thành sự kiện cuộn.
Thông tin cập nhật về phần phụ thuộc
Compose UI
vàCompose Material
hiện phụ thuộc vào Lifecycle 2.5.1. (I05ab0, b/258038814)
Phiên bản 1.1.0-alpha02
Ngày 9 tháng 11 năm 2022
Phát hành androidx.compose.material3:material3:1.1.0-alpha02
và androidx.compose.material3:material3-window-size-class:1.1.0-alpha02
. Phiên bản 1.1.0-alpha02 bao gồm các thay đổi sau.
Các thay đổi về API
awaitFirstDown
vàwaitForUpOrCancellation
hiện chấp nhậnPointerEventPass
để linh hoạt hơn (cũng như khắc phụcExposedDropdownMenuBox
hiển thị một trình đơn trong khi cuộn).(I7579a, b/212091796)- Thêm tham số
minLines
vào Text (Văn bản) material và material3,TextField
vàOutlinedTextField
giúp đặt chiều cao tối thiểu của thành phần theo số lượng dòng (I4af1d) - Ngừng sử dụng hàm
TopAppBarDefaults smallTopAppBarColors
và thay bằng một hàmtopAppBarColors
mới mà bạn nên sử dụng khi tạoTopAppBar
. (Ie6cb9) - Thêm tham số
minLines
vàoBasicText
vàBasicTextField
. Nhờ đó có thể đặt chiều cao tối thiểu của các thành phần kết hợp (composable) này theo số dòng (I24294, b/122476634)
Sửa lỗi
- Cắt nội dung của Material3
IconButton
vàIconToggleBotton
vào hình dạng theo lớp trạng thái của thành phần (ví dụ: hình tròn). (I9da8f) - Cập nhật các thanh ứng dụng trên cùng trung bình và lớn của Material3 để áp dụng cùng một màu nền trên toàn bộ nền tảng, đồng thời cho phép cài đặt ghi đè màu mặc định bằng các giá trị màu trong suốt. (I67659, b/249688556, b/250838918)
Phiên bản 1.1.0-alpha01
Ngày 24 tháng 10 năm 2022
Phát hành androidx.compose.material3:material3:1.1.0-alpha01
và androidx.compose.material3:material3-window-size-class:1.1.0-alpha01
. Phiên bản 1.1.0-alpha01 bao gồm các thay đổi sau.
Sửa lỗi
- Sửa lỗi thanh ứng dụng trên cùng khi áp dụng tiêu đề bằng TextStyle và Brush (Bút vẽ). (If667e)
Phiên bản 1.0
Phiên bản 1.0.1
Ngày 9 tháng 11 năm 2022
Phát hành androidx.compose.material3:material3:1.0.1
và androidx.compose.material3:material3-window-size-class:1.0.1
. Phiên bản 1.0.1 bao gồm các thay đổi sau.
Sửa lỗi
- Cập nhật các thanh ứng dụng trên cùng trung bình và lớn của Material3 để áp dụng cùng một màu nền trên toàn bộ nền tảng, đồng thời cho phép cài đặt ghi đè màu mặc định bằng các giá trị màu trong suốt. (I67659, b/249688556, b/250838918)
Phiên bản 1.0.0
Ngày 24 tháng 10 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0
và androidx.compose.material3:material3-window-size-class:1.0.0
. Phiên bản 1.0.0 bao gồm các thay đổi sau.
Các tính năng chính của phiên bản 1.0.0
Đây là bản phát hành ổn định đầu tiên của Compose Material 3!
Tuỳ chỉnh giao diện Material Design 3 và màu động Material You
Thành phần Material Design 3
- Huy hiệu
- Thanh ứng dụng ở dưới cùng
- Nút
- FAB và FAB mở rộng
- Thẻ
- Hộp đánh dấu
- Khối
- Hộp thoại
- Đường phân chia
- Trình đơn thả xuống
- Danh sách
- Thanh điều hướng
- Ngăn điều hướng
- Dải điều hướng
- Chỉ báo tiến trình
- Nút chọn
- Thanh trượt
- Công tắc
- Thẻ
- Trường văn bản
- Thanh ứng dụng trên cùng
- Biểu tượng
- Văn bản
- Nền tảng
- Bố cục
- Màu nội dung
Lớp kích thước cửa sổ
material3-window-size-class
là một thư viện mới hỗ trợ các lớp kích thước cửa sổ: một tập hợp các điểm ngắt khung nhìn có quy cách bắt buộc để bạn thiết kế, phát triển và kiểm thử các bố cục ứng dụng có thể đổi kích thước. Bạn có thể sử dụngcalculateWindowSizeClass
để truy xuất phiên bản lớp kích thước cửa sổ. Bạn có thể sử dụng thực thể này để xác định cách giao diện người dùng sẽ xuất hiện, chẳng hạn như hiển thị dải điều hướng thay vì phần điều hướng dưới cùng đối với kích thước cửa sổ lớn hơn. Để biết thêm thông tin và cách dùng mẫu, hãy xem tài liệu tham khảo API choWindowSizeClass
.Vui lòng xem bài đăng trên blog này để biết thêm chi tiết!
Phiên bản 1.0.0-rc01
Ngày 5 tháng 10 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-rc01
và androidx.compose.material3:material3-window-size-class:1.0.0-rc01
. Phiên bản 1.0.0-rc01 bao gồm các thay đổi sau.
Các thay đổi về API
- Thêm tham số khe để hỗ trợ API trường văn bản (Iaac0d, b/227146125)
Phiên bản 1.0.0-beta03
Ngày 21 tháng 9 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-beta03
và androidx.compose.material3:material3-window-size-class:1.0.0-beta03
. Phiên bản 1.0.0-beta03 bao gồm các thay đổi sau.
Các thay đổi về API
ExposedDropdownMenuDefaults
nay cho thấy giá trị đệm cho các mục trong trình đơn. (I34ee1)ExposedDropdownMenuBoxScope
nay có một đối tượng sửa đổiModifier.menuAnchor()
sẽ được truyền vào trường văn bản để a11y hoạt động đúng cách. (I27fa3)- Thêm 2 phương thức nạp chồng cho Slider API (API Thanh trượt) hiện tại để cho phép người dùng truyền lệnh thumb hoặc theo dõi để điền sẵn thanh trượt. (I21c00)
Sửa lỗi
- Cập nhật bản đồ màu giao diện tối cho Vùng chứa lỗi (On Error Container) thành tông màu 90 (Ic5612)
- Sửa lỗi để cho phép đặt nền trong suốt cho các thanh ứng dụng nhỏ ở trên cùng của Material 3. (I645e2, b/245575782)
Phiên bản 1.0.0-beta02
Ngày 7 tháng 9 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-beta02
và androidx.compose.material3:material3-window-size-class:1.0.0-beta02
. Phiên bản 1.0.0-beta02 bao gồm các thay đổi sau.
Các thay đổi về API
- Các phần lồng ghép thành phần mặc định được đưa vào các thành phần m3 trong phiên bản beta01 không còn dựa trên các phần lồng ghép IME.
- Thành phần Scaffold Material3 nay có tham số
contentWindowInsets
, cho phép chỉ định số lượng phần lồng ghép cần xử lý cho vị trí nội dung. (Icf11a, b/243713323) - Ngừng sử dụng hàm
SmallTopAppBar
thử nghiệm của Material 3 và ra mắt một hàmTopAppBar
tương đương. Vui lòng chuyển sang sử dụng hàm mới của bạn. (I74404, b/226918634) - Thêm quyền kiểm soát đối với hành vi hất và chụp nhanh trên thanh ứng dụng trên cùng. (I15c81)
- Xoá startIndent khỏi Divider, di chuyển màu sang tham số cuối cùng. (If7be2)
Sửa lỗi
- Hộp thoại tự nhận dạng đối với người dùng TalkBack bằng cách thông báo chữ Hộp thoại (Dialog) khi xuất hiện. (I857ef)
Phiên bản 1.0.0-beta01
Ngày 24 tháng 8 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-beta01
và androidx.compose.material3:material3-window-size-class:1.0.0-beta01
. Phiên bản 1.0.0-beta01 bao gồm các thay đổi sau.
Tài liệu tham khảo API
Để xem khả năng tuỳ chỉnh giao diện, thành phần và các thành phần kết hợp khác mới nhất hiện có, hãy xem phần Tổng quan về tài liệu tham khảo API Compose Material 3.
Các thay đổi về API
- Cập nhật thanh ứng dụng trên cùng của Material 3 để chuyển ngay sang trạng thái thu gọn hoàn toàn đến mở rộng hoàn toàn. Cập nhật cả hàm hành vi
TopAppBarDefaults
thành Thành phần kết hợp, đồng thời cung cấp giá trị mặc định cho trạng thái thanh ứng dụng trên cùng và thông số ảnh động. (I642b3) - Cập nhật chữ ký thành phần FAB để khớp với Surface API (I3afaa)
- Thêm tuỳ chọn hỗ trợ có sẵn cho phần lồng ghép trong thanh ứng dụng, ngăn, thanh điều hướng và dải điều hướng trên cùng. Khi được dùng riêng lẻ hoặc cùng với Scaffold, những thành phần này sẽ tự động xử lý các phần lồng ghép cho nhà phát triển. Lưu ý: Sự thay đổi này không tự động thêm cách xử lý biểu tượng thanh trạng thái cũng như độ trong suốt của thanh trạng thái và thanh điều hướng. Vui lòng tiếp tục làm theo cách thủ công để đảm bảo trải nghiệm tràn viền tốt nhất. (I7e4e6, b/183161866)
- Cập nhật thành phần mặc định để giảm khu vực API nhằm cải thiện tính linh hoạt và hiệu suất trong tương lai. (I31820)
- Sắp xếp lại các tham số bảng tính trong ngăn điều hướng và khối để duy trì tính nhất quán trong API (I45d0b)
- Xoá
startIndent
khỏi Đường phân chia và chuyển màu sắc thành thông số cuối cùng.(If7be2)
Phiên bản 1.0.0-alpha16
Ngày 10 tháng 8 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-alpha16
và androidx.compose.material3:material3-window-size-class: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
- Hỗ trợ xác định chiều rộng tuỳ chỉnh trên ngăn điều hướng. (Ia7f10)
Các thay đổi về API
- Sắp xếp lại các tham số Tab và LeadingIconTab để duy trì tính nhất quán trong API (Ie2637)
- Đánh dấu
BadgeDefaults
là thử nghiệm. (I98ef3) - Xoá hàm của ngăn điều hướng đã ngừng hoạt động. (I4f2db)
- Sắp xếp lại các tham số Thanh trượt trong Material 3 để duy trì tính nhất quán trong API (I0aee7)
- Sắp xếp lại các tham số
NavigationBar
vàNavigationRail
để duy trì tính nhất quán trong API (I51cda) - Sắp xếp lại các tham số trong Material 3 để duy trì tính nhất quán trên toàn bộ API. (If4ae1)
- Sắp xếp lại các tham số Thanh trượt trong Material 3 để duy trì tính nhất quán trong API (I62673)
- Đổi tên tham số biểu tượng thành các hành động để nhất quán với thanh ứng dụng trên cùng (Id75be)
- Đánh dấu
Badge
vàBadgedBox
là thử nghiệm vì hoạt động căn chỉnh liên kết vẫn còn nhiều. (I1712e, b/236524516) - Thay đổi chú giải
@ExperimentalMaterial3Api
trên các biến thể của nút biểu tượng thành@OptIn
(I070b5) - Tách nội dung của ngăn điều hướng thành thành phần kết hợp riêng để hỗ trợ việc chỉ định chiều rộng tuỳ chỉnh trên nội dung đó. (Ia7f10)
- Xoá
Divider
khỏiMenuDefaults
vàTabDefaults
(I4e33c)
Phiên bản 1.0.0-alpha15
Ngày 27 tháng 7 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-alpha15
và androidx.compose.material3:material3-window-size-class:1.0.0-alpha15
. Phiên bản 1.0.0-alpha15 bao gồm các thay đổi sau.
Tính năng mới
- Cho phép kéo thanh ứng dụng trên cùng từ chính thanh đó. (I65c00, b/205873416)
Các thay đổi về API
- Cập nhật các API
FilterChip
vàElevatedFilterChip
để xoá vùngselectedIcon
và tăng cường sử dụng lạileadingIcon
để hiển thị trạng thái đã chọn. (Ie5dc2) - Thêm các vai trò màu của biến thể nền và đường viền. (Id6d54)
- Sửa quy ước đặt tên cho các giá trị mặc định của thành phần kết hợp. (I62b27)
- Đánh dấu
ListItemDefaults
vàListItemColors
là thử nghiệm. (I1f3ec) - Thay đổi API thanh ứng dụng trên cùng để phản ánh tốt hơn ý nghĩa của các thuộc tính trạng thái. Ngoài ra còn đánh dấu API thanh ứng dụng trên cùng là thử nghiệm. (Ic0ad8)
- Chúng tôi hiện đã thêm màu lựa chọn văn bản vào
TextFieldColors
để tăng khả năng người dùng tìm thấy ứng dụng. (Iba1b8) - Thêm
ButtonDefault.ButtonWithIconContentPadding
để sử dụng với các nút chứa biểu tượng. (I2bf9c) - Các trường văn bản được đánh dấu là thử nghiệm để tăng khả năng linh hoạt khi thay đổi API trong tương lai. (I127b5)
- Xoá chú thích
@ExperimentalMaterial3Api
khỏi hàmCheckbox
. (I5eefc) - Xoá chú thích
@ExperimentalMaterial3Api
khỏi hàmRadioButton
. (I17e2a) - Xoá chú thích
@ExperimentalMaterial3Api
khỏi các Thẻ không tương tác. (I9bd49) - Cập nhật các đối tượng mặc định cho nhiều thành phần để thêm màu sắc, hình dạng, v.v. (I96e11)
Sửa lỗi
- Xoá các biểu tượng tạo vệt không hoạt động khỏi các mẫu chip đầu vào để tránh gây nhầm lẫn cho người dùng trong ứng dụng danh mục. (I9846a)
Phiên bản 1.0.0-alpha14
Ngày 29 tháng 6 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-alpha14
và androidx.compose.material3:material3-window-size-class:1.0.0-alpha14
. Phiên bản 1.0.0-alpha14 bao gồm các thay đổi sau.
Tính năng mới
- Thêm cách triển khai danh sách M3, hãy xem tài liệu về cách sử dụng mẫu (Id7a20)
Các thay đổi về API
- Thay đổi tên tham số từ các giá trị thành giá trị trong
RangeSlider
(I3b79a) - API thay đổi thành cách triển khai
InputChip
để hỗ trợ trạng thái có thể chọn theo quy cách của Material Design. Hỗ trợ thêm tại màuFilterChip
đối với trạng thái bị vô hiệu hoá đã chọn. (I55244, b/235792432) - Thêm FAB mặc định
BottomAppBar
(Ida4c8) - Đã thêm
ColorScheme.surfaceColorAtElevation
(Id41af) - Các giao diện trong thư viện Compose hiện được xây dựng bằng phương thức giao diện mặc định jdk8 (I5bcf1)
WindowWidthSizeClass
vàWindowHeightSizeClass
hiện triển khai Thẻ so sánh, vì vậy, bạn có thể so sánh các thẻ này thông qua toán tử (<, <=, >=, >) và các API khác. (I747d0)
Sửa lỗi
- Cập nhật mẫu huy hiệu để cung cấp nội dung mô tả nội dung có ý nghĩa hơn. (I10b9d)
- Thêm tuỳ chọn sử dụng kích thước phông chữ hệ thống vào bộ chọn giao diện của danh mục Material 3. (I10605)
- Thêm mã mẫu cho Huy hiệu (Badge) và chỉ báo tiến trình không xác định. (I8fbe0)
Phiên bản 1.0.0-alpha13
Ngày 1 tháng 6 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-alpha13
và androidx.compose.material3:material3-window-size-class:1.0.0-alpha13
. Phiên bản 1.0.0-alpha13 bao gồm các thay đổi sau.
Các thay đổi về API
- Hỗ trợ duy trì vị trí thanh ứng dụng trên cùng trong quá trình thay đổi cấu hình. (I10459, b/216160958)
Phiên bản 1.0.0-alpha12
Ngày 18 tháng 5 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-alpha12
và androidx.compose.material3:material3-window-size-class:1.0.0-alpha12
. Phiên bản 1.0.0-alpha12 bao gồm các thay đổi sau.
Sửa lỗi
- Thanh trượt mẹ hiện có thể có chiều rộng bằng 0. (b/231707291)
Phiên bản 1.0.0-alpha11
Ngày 11 tháng 5 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-alpha11
và androidx.compose.material3:material3-window-size-class:1.0.0-alpha11
. Phiên bản 1.0.0-alpha11 bao gồm các thay đổi sau.
Tính năng mới
- Thêm
RangeSlider
vào Material 3 (I18e38) - Thêm tuỳ chọn hỗ trợ Material3
AssistChip
vàInputChip
(I0d25a) - Thêm tuỳ chọn hỗ trợ Material3
FilterChip
vàSuggestionChip
(I9fdf3)
Các thay đổi về API
- Đã đổi tên thành phần kết hợp
TextFieldDefaults.BorderStroke
để vẽ một nét đường viền trongOutlinedTextField
thànhTextFieldDefaults.BorderBox
. (I5f295) - Chuyển sang chế độ thay đổi hình ảnh trong m3 (Iab30e)
- Cho phép chuyển màu cho các nút biểu tượng tiêu chuẩn. (Ia2445)
Sửa lỗi
- Thêm tính năng kiểm tra lint vào material3/Scaffold để đảm bảo khoảng đệm bên trong được sử dụng (I72293, b/226951418)
Phiên bản 1.0.0-alpha10
Ngày 20 tháng 4 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-alpha10
và androidx.compose.material3:material3-window-size-class: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
material3-window-size-class
là một thư viện mới hỗ trợ các lớp kích thước cửa sổ: một tập hợp các điểm ngắt khung nhìn có quy cách bắt buộc để bạn thiết kế, phát triển và kiểm thử các bố cục ứng dụng có thể đổi kích thước. Bạn có thể sử dụngcalculateWindowSizeClass
để truy xuất phiên bản lớp kích thước cửa sổ. Bạn có thể sử dụng thực thể này để xác định cách giao diện người dùng sẽ xuất hiện, chẳng hạn như hiển thị dải điều hướng thay vì phần điều hướng dưới cùng đối với kích thước cửa sổ lớn hơn. Để biết thêm thông tin và cách dùng mẫu, hãy xem tài liệu tham khảo API choWindowSizeClass
. Để biết thêm thông tin về định nghĩa lớp kích thước cửa sổ, hãy xem hướng dẫn công khai về việc hỗ trợ nhiều loại kích thước màn hình.
Các thay đổi về API
- Thêm độ cao FAB mặc định cho
BottomAppBar
, xoá hàm lambda ở cuối khỏiBottomAppBar
bằng FAB. (I92c47) - Thêm Material3
FilledIconButton
,FilledTonalIconButton
vàOutlinedIconButton
. (Ib2bda) - Cập nhật Snackbar API (API Thanh thông báo nhanh) của Material 3 để chấp nhận các giá trị màu cho thao tác không bắt buộc và thao tác đóng. (Ibe4b4)
- Mức sử dụng một phần (giảm/không có vị trí) trong
PointerInputChange
sẽ không được dùng nữa. Bạn có thể dùngconsume()
để thay đổi hoàn toàn. Bạn có thể sử dụngisConsumed
để xác định xem ai đó đã từng thực hiện thay đổi trước đây hay chưa. - Giờ đây,
PointerInputChange::copy()
luôn tạo một bản sao nông. Điều này có nghĩa là các bản sao củaPointerInputChange
sẽ được sử dụng sau khi một trong các bản sao được sử dụng. Nếu bạn muốn tạo mộtPointerInputChange
không liên kết, hãy dùng hàm khởi tạo. (Ie6be4, b/225669674) - Các thay đổi đối với Cards API (API Thẻ) để nhận màu vùng chứa và nội dung qua giao diện
CardColors
, đồng thời hỗ trợ trạng thái bị vô hiệu hoá cho các thẻ có thể nhấp. (I927df) - Tham số
backgroundColor
được đổi tên thànhcontainerColor
trong các trường văn bản Material 3 để cải thiện tính nhất quán với các thành phần khác. (I6fbd9)
Sửa lỗi
- Cập nhật lên tiêu chuẩn
IconButton
để điều chỉnh cho phù hợp với quy cách của Material3. (I09eab) - Di chuyển chiều cao thanh trên cùng của Material3 Scaffold vào khoảng đệm được chuyển đến nội dung, cho phép nội dung hiển thị bên dưới thanh ứng dụng trên cùng. Nếu bạn bỏ qua
PaddingValues
, thì nội dung có thể bị che khuất bằng thanh trên cùng. (I83cbc, b/217776202)
Phiên bản 1.0.0-alpha09
Ngày 6 tháng 4 năm 2022
Phát hành androidx.compose.material3: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
- Thêm API Chuyển đổi Material 3 (I2c3ad)
Các thay đổi về API
- Thêm tính năng hỗ trợ các trình đơn thả xuống có trường văn bản (còn gọi là "trình đơn thả xuống hiển thị" hoặc "hộp kết hợp"). (I1b832)
- Thêm thông số hình dạng vào hệ thống phụ MaterialMaterial và Shape. (I37426)
- Đã thêm một tham số mở rộng vào
ExtendedFloatingActionButton
để kiểm soát việc FAB được mở rộng hay thu gọn, với ảnh động giữa mỗi trạng thái. Thêm trường hợp quá tải FAB mở rộng cho FAB mở rộng có văn bản đứng sau cho ExtendedFAB mà không có biểu tượng. (Iba7f1)
Phiên bản 1.0.0-alpha08
Ngày 23 tháng 3 năm 2022
Phát hành androidx.compose.material3: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
- Thêm tính năng hỗ trợ các trường văn bản Material 3. (I795cc, b/199377790)
Các thay đổi về API
- Thêm dấu phân chia mặc định cho trình đơn (I01374)
- Thêm tham số màu
surfaceTint
vào lớpColorScheme
. (I2f558)
Sửa lỗi
- Sửa lỗi tại Nút của Material3 để đọc giá trị kiểu văn bản mặc định của nút đó qua MaterialTheme. (Ie62fc)
Phiên bản 1.0.0-alpha07
Ngày 9 tháng 3 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-alpha07
. Phiên bản 1.0.0-alpha07 bao gồm các thay đổi sau.
Các thay đổi về API
- Cập nhật Material 3 Surface API nhằm hiển thị các hàm nạp chồng cho những Khu vực (Surface) có thể nhấp, cũng như thêm một hàm để hỗ trợ các khu vực có thể chọn và bật tắt. (I4bf18)
LazyVerticalGrid
vàLazyHorizontalGrid
hiện đang ổn định. (I307c0)LazyVerticalGrid/LazyHorizontalGrid
và tất cả API có liên quan đã được di chuyển vào gói con .grid. Vui lòng cập nhật các mục nhập của bạn từ androidx.compose.foundation.lazy thành androidx.compose.foundation.lazy.grid. (I2d446)- Huỷ thay đổi trước đó (chỉ dựa vào Thành phần hiển thị cho
WindowInsetsControllerCompat
) và một lần nữa, bạn cần phải sử dụng Cửa sổ để quản lý một số cờ trong cửa sổ. Ngừng sử dụngViewCompat.getWindowInsetsController
và thay vào đó làWindowCompat.getInsetsController
để đảm bảo sử dụng đúng Cửa sổ (chẳng hạn như khi Chế độ xem nằm trong hộp thoại). (I660ae, b/219572936) - Thêm API
LazyVerticalGrid
mới để xác định kích thước trục chéo (I17723)
Sửa lỗi
- Cập nhật Card API (API Thẻ) để tuân theo các thay đổi tại Surface API (API Khu vực) (I3c8b9)
Phiên bản 1.0.0-alpha06
Ngày 23 tháng 2 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-alpha06
. Phiên bản 1.0.0-alpha06 bao gồm các thay đổi sau.
Các thay đổi về API
NavigationDrawerItem
được thêm vào đại diện cho một điểm đến duy nhất trong các ngăn (Ic396f, b/218286829)- Thêm
PermanentNavigationDrawer
vàDismissibleNavigationDrawer
làm API thử nghiệm. Đó là các ngăn phù hợp với thiết bị có màn hình lớn. (I5f8ab, b/218286829) - Thêm tính năng hỗ trợ thanh ứng dụng dưới cùng của Material 3 (Ic432a)
NavigationDrawer
được đổi tên thànhModalNavigationDrawer
(I1807d, b/218286829)- Thêm lớp Slider (thanh trượt) và mã thông báo Material 3 (I1ccee)
- Thêm quy trình triển khai lớp Tab, hãy xem tài liệu để sử dụng mẫu (Ie0146)
Sửa lỗi
- Khắc phục sự cố khiến quá trình điều hướng tuyến tính của trình đọc màn hình
TalkBack
chọn tiêu đề thanh ứng dụng trên cùng trống. (Id4690) - Thêm
IconSize
vàoFloatingActionButtonDefaults
(Ia71cf) - Sửa lỗi cho các nút
AlertDialog
bị ẩn khi một văn bản dài được thêm vào bằngLazyColumn
. (Ib2cc9, b/216663029)
Phiên bản 1.0.0-alpha05
Ngày 9 tháng 2 năm 2022
Phát hành androidx.compose.material3: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
Thêm thành phần Material Design 3
- Trình đơn thả xuống
- Thẻ
Các thay đổi về API
- Hàm
Surface
không còn hoạt động mà sẽ thực hiện lệnh gọi lại onClick. Bạn nên tạo các nền tảng có thể nhấp bằngInteractionSource
vàModifier.clickable()
. (I211c6) - Thêm tính năng hỗ trợ chiều cao của FAB khi nhấn và lấy tiêu điểm. (Ibb584)
- Thay đổi API
Surface
để nhận một InteractionSource cho phép kiểm soát giao diện của mục đó ở các trạng thái khác nhau. (Iafbc8)
Sửa lỗi
- Thêm màu trung gian bị thiếu trong bảng phối màu động (I456c4, b/214588434)
Phiên bản 1.0.0-alpha04
Ngày 26 tháng 1 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-alpha04
. Phiên bản 1.0.0-alpha04 bao gồm các thay đổi sau.
Các thay đổi về API
- Thêm
NonRestartableComposable
vào các phương thức đang làm quá tải những phương thức hiện có mà không cần logic phức tạp. Điều này giảm bớt các bước kiểm tra ghi nhớ do trình biên dịch tạo ra (các bước cân bằng) cho mọi tham số lặp lại ở hàm bên trong được gọi. (I90490) - Thêm bộ chia Material 3. (Ica5fc)
- Đánh dấu Checkbox và RadioButton bằng chú thích API thử nghiệm. (Ie44bb)
- Thêm tính năng hỗ trợ các chỉ báo tiến trình của Material 3. (Iff232, b/205023841)
Sửa lỗi
- Cập nhật màu vùng chứa
TextButton's
đã bị tắt thành màu trong suốt (I6b248, b/213339737)
Phiên bản 1.0.0-alpha03
Ngày 12 tháng 1 năm 2022
Phát hành androidx.compose.material3:material3:1.0.0-alpha03
. Phiên bản 1.0.0-alpha03 bao gồm các thay đổi sau.
Sửa lỗi
- Thêm
LocalIndication
vàoMaterialTheme
của Material 3. (I7ce4e) - Chỉnh sửa bán kính góc áp dụng cho các Hộp đánh dấu (I38b03, b/175198975, b/202309440)
Thông tin cập nhật về phần phụ thuộc
- Nay phụ thuộc vào Kotlin
1.6.10
.
Phiên bản 1.0.0-alpha02
Ngày 1 tháng 12 năm 2021
Phát hành androidx.compose.material3:material3:1.0.0-alpha02
. Phiên bản 1.0.0-alpha02 bao gồm những thay đổi sau.
Tính năng mới
- Thêm tính năng hỗ trợ cho hộp đánh dấu và nút chọn.
- Cập nhật để tương thích với Kotlin
1.6.0
Các thay đổi về API
- Xoá ngăn khỏi thành phần Scaffold của Material 3. (I04f51)
- Thêm tính năng hỗ trợ
Checkbox
của Material 3. (Id5542) - Thêm tính năng hỗ trợ
RadioButton
của Material 3. (I20334)
Sửa lỗi
- Giảm
IconButton
bán kính gợn sóng từ 40dp xuống 20 dp. (I68bbe, b/206674345) - Thay đổi đường dẫn nhanh của chuỗi cổng đối với
Text
, không còn làcompose.material
(I30b03) - Khắc phục tình trạng nút được mã hoá cứng luôn bật. (Iea832, b/205335456)
Phiên bản 1.0.0-alpha01
Ngày 27 tháng 10 năm 2021
Phát hành androidx.compose.material3: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
Tuỳ chỉnh giao diện Material Design 3 và màu động Material You
Thành phần Material Design 3
- Nút
- FAB và FAB mở rộng
- Hộp thoại
- Thanh điều hướng
- Ngăn điều hướng
- Dải điều hướng
- Thanh ứng dụng hàng đầu
- Huy hiệu
- Biểu tượng
- Văn bản
- Nền tảng
- Bố cục
- Màu nội dung
Để biết thêm thông tin, hãy xem phần Material Design 3 và Material You trong phần hướng dẫn Tuỳ chỉnh giao diện Material trong Compose.