Compose Material 3
最近更新時間 | 穩定版 | 候選版 | Beta 版 | Alpha 版 |
---|---|---|---|---|
2023 年 2 月 8 日 | 1.0.1 | - | - | 1.1.0-alpha06 |
結構
Compose 是由 androidx
中的 7 個 Maven 群組 ID 所組成。每個群組都包含一個指定功能子集,且各有一組專屬的版本資訊。
下表提供各群組的說明和每組版本資訊的連結。
群組 | 說明 |
---|---|
compose.animation | 在 Jetpack Compose 應用程式中建構動畫,提供豐富的使用者體驗。 |
compose.compiler | 透過 Kotlin 編譯器外掛程式轉換 @Composable 函式,並啟用最佳化功能。 |
compose.foundation | 透過現成的構成元素編寫 Jetpack Compose 應用程式,然後進一步擴充基礎,建構出自己的設計系統元件。 |
compose.material | 運用現成的 Material Design 元件建構 Jetpack Compose UI。這是更高層級的 Compose 進入點,用意是確保提供的元件與 www.material.io 上所述元件相符。 |
compose.material3 | 運用新一代的 Material Design 3 元件建構 Jetpack Compose UI。Material 3 具有新的主題設定和元件,另外還提供了動態色彩等 Material You 個人化功能,與全新的 Android 12 視覺風格及系統 UI 相互呼應。 |
compose.runtime | Compose 程式設計模型和狀態管理的基本構成元素,以及 Compose Compiler 外掛程式指定的核心執行階段。 |
compose.ui | 與裝置互動所需的 Compose UI 基礎元件,包括版面配置、繪圖及輸入。 |
宣告依附元件
如要新增 Compose 的依附元件,必須將 Google Maven 存放區新增至您的專案。詳情請參閱「Google 的 Maven 存放區」一節。
在應用程式或模組的 build.gradle
檔案中,新增所需構件的依附元件:
Groovy
dependencies { implementation "androidx.compose.material3:material3:1.0.1" implementation "androidx.compose.material3:material3-window-size-class:1.0.1" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.0.1") implementation("androidx.compose.material3:material3-window-size-class:1.0.1") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
如要進一步瞭解依附元件,請參閱「新增建構依附元件」一文。
意見回饋
您的意見可協助我們改善 Jetpack。如果您發現新問題,或想提出建議協助改善這個程式庫,請告訴我們。建立新的問題之前,請先查看這個程式庫中的現有問題。只要按一下星號按鈕,即可投票給現有的問題。
詳情請參閱 Issue Tracker 文件。
1.1 版本
1.1.0-alpha06 版
2023 年 2 月 8 日
發布 androidx.compose.material3:material3:1.1.0-alpha06
和 androidx.compose.material3:material3-window-size-class:1.1.0-alpha06
。1.1.0-alpha06 版包含以下修訂項目。
新功能
- 文字欄位現在支援前置文字和後置文字 (Ia8578、b/179884561)
- 新增
TimePicker
函式,可與TimePickerState
和便利方法rememberTimePickerState
,在顯示 Material 3 規格後接著提供時間挑選器 (I71910) - 日期輸入現在是
DatePicker
的顯示模式。新增對切換動作的支援,讓使用者在日期挑選器與日期輸入模式之間切換 (Ieeff7) - 新增
RichTextTooltips
的 API (I58ef3) - 實作 Material 3 的強制回應底部功能表,包括
ModalBottomSheet
和ModalBottomSheetDefaults
,並同時推出SheetState
和rememberSheetState
(可用於日後的功能表元件 (I0853a、b/244189383)
API 變更
- 調整 API
showSnackbar
的穩定性 (I195c2、b/261424370) - 調整輔助方塊和建議方塊的 API 穩定性 (Ibb67b、b/261424370)
- 將
ListItem
、ListItemDefaults
和ListItemColors
API 升級為非實驗 API (I7e7fa、b/261438882) - 將
SliderPositions
、SliderDefaults.Thumb
和SliderDefaults.Track
升級為穩定版,新增內含自訂指標及測試群組的非實驗Slider
和RangeSlider
API,以及淘汰先前的Slider
和RangeSlider
API (Ie5ea6、b/261566890) - 將
Modifier.tooltipAnchor()
設為公開,讓開發人員能夠將其傳送到錨定標記,藉此指明使用者長按時要顯示的工具提示。我們還更新了PlainTooltipBox
API,TooltipState
現在不得為空值且會有預設值 (Ie2fb7) - 將
ProgressIndicatorDefaults.circularTrackColor
標示為@Composable
,以便保持一致 (Id29cc) - 還原屬性 getter
LocalMinimuTouchTargetEnforcement
並將其標示為已淘汰,現在會重新導向至LocalMinimumInteractiveComponentEnforcement
(I60dd5)
1.1.0-alpha05 版
2023 年 1 月 26 日
發布 androidx.compose.material3:material3:1.1.0-alpha05
和 androidx.compose.material3:material3-window-size-class:1.1.0-alpha05
。1.1.0-alpha05 版包含以下修訂項目。
新功能
DatePickerDialog
和無障礙功能支援- 將自訂指標和測試群組新增至
RangeSlider
1.1.0-alpha04 版
2023 年 1 月 11 日
發布 androidx.compose.material3:material3:1.1.0-alpha04
和 androidx.compose.material3:material3-window-size-class:1.1.0-alpha04
。查看 1.1.0-alpha04 版的修訂項。
新功能
- 推出可透過日曆 UI 選擇單一日期的初始
DatePicker
API。我們仍會對這個 API 進行變更 (I722b9) - 透過
PlainTooltipBox
新增對純工具提示的支援 (I0cdfb) - 推出搜尋列 (Iad128)
- 推出
SwipeToDismiss
(I458a8、b/242889540)
API 變更
- 在 Surface 上新增
IsContainer
語意屬性。這項屬性會在日後的變更中用到,屆時我們會根據 surfaces 等元素的語意含義來決定周遊順序 (I63379) - 將導覽匣相關 API 標示為穩定版。(Iab01e、b/261439597)
- 為圓形進度指標新增軌跡色彩參數,並為圓形和線性進度指標新增筆劃上限參數 (Ie668c、b/216325962、b/222964817)
- 針對已淘汰的隱藏函式,提供更多傳回類型的「是否可為空值」屬性。(Ibf7b0)
- 新增
Modifier.minimumInteractiveComponentSize
。這可用於保留至少 48.dp 的大小,在元素的測量尺寸較小時減少觸控互動 (I33f58、b/258495559)。 - 針對含有內容版位的
AlertDialog
可組合項新增了實驗性 API。(Iec4a2)
修正錯誤
- 進度指標的進度現在不會超過預期範圍限制。(I8a7eb、b/262262727)。
已知問題
- 從
androidx.compose.foundation:1.4.0-alpha03
更新為androidx.compose.foundation:1.4.0-alpha04
時,您可能會遇到java.lang.NoSuchFieldError
錯誤。這項問題最初是回報在這裡。我們已提交修正內容,將在下次 Compose 更新時推出。如要暫時解決這個問題,請將androidx.compose.material
和androidx.compose.material3
程式庫更新為最新版本 (1.1.0-alpha04),或將androidx.compose.foundation
降級為 1.4.0-alpha03。
1.1.0-alpha03 版本
2022 年 12 月 7 日
發布 androidx.compose.material3:material3:1.1.0-alpha03
和 androidx.compose.material3:material3-window-size-class:1.1.0-alpha03
。查看 1.1.0-alpha03 版的修訂項。
API 變更
- 已將
consumedWindowInsets()
重新命名為consumeWindowInsets()
,將withConsumedWindowInsets()
重新命名為onConsumedWindowInsetsChanged()
,並將 Modifier 設為公開。(Ie44e1) - 為使用圖示的文字按鈕新增預設內容邊框間距。(I8f662)
- 為導覽列和邊欄新增停用的顏色。(Ia7892、b/258867034)
- 新增用於查詢祖系捲動資訊的 Modifier API。(I2ba9d、b/203141462)
- 在手勢可能成為捲動事件時,在
Clickable
中使用可正確延遲按下的互動動作。 - 修正問題:在
Scrollable ViewGroup
中使用Clickables
時無法正確延遲漣漪效果。 - 更新 Drawer 和 Sheet,以便在手勢可能變成捲動事件時正確延遲按下動作。
依附元件更新
Compose UI
和Compose Material
現已依附於 Lifecycle 2.5.1。(I05ab0、b/258038814)
1.1.0-alpha02 版本
2022 年 11 月 9 日
發布 androidx.compose.material3:material3:1.1.0-alpha02
和 androidx.compose.material3:material3-window-size-class:1.1.0-alpha02
。查看 1.1.0-alpha02 版的修訂項。
API 變更
awaitFirstDown
和waitForUpOrCancellation
現在接受PointerEventPass
,以增加彈性 (同時修正捲動時ExposedDropdownMenuBox
顯示選單)。(I7579a、(b/212091796))- 在 material 和 material3 文字、
TextField
和OutlinedTextField
中新增minLines
參數,以便能夠以行數來設定元件的最小高度 (I4af1d) - 淘汰
TopAppBarDefaults smallTopAppBarColors
函式,在建立TopAppBar
時應使用的新的topAppBarColors
函式。(Ie6cb9) - 在
BasicText
和BasicTextField
中新增minLines
參數。這樣即可針對行數來設定這些可組合項的最小高度 (I24294、b/122476634)
修正錯誤
- 將 Material3
IconButton
和IconToggleBotton
的內容剪輯為元件的狀態層形狀 (例如圓形)。(I9da8f) - 更新 Material3 中型和大型頂端應用程式列,即可在其整個介面上套用相同的背景顏色,並允許進行以透明色值覆寫預設顏色的設定。(I67659、b/249688556、b/250838918)
1.1.0-alpha01 版
2022 年 10 月 24 日
發布 androidx.compose.material3:material3:1.1.0-alpha01
和 androidx.compose.material3:material3-window-size-class:1.1.0-alpha01
。查看 1.1.0-alpha01 版的修訂項。
修正錯誤
- 修正用 TextStyle 和 Brush 套用標題時的頂端應用程式列。(If667e)
1.0 版
1.0.1 版
2022 年 11 月 9 日
發布 androidx.compose.material3:material3:1.0.1
和 androidx.compose.material3:material3-window-size-class:1.0.1
。查看 1.0.1 版的修訂項。
修正錯誤
- 更新 Material3 中型和大型頂端應用程式列,即可在其整個介面上套用相同的背景顏色,並允許進行以透明色值覆寫預設顏色的設定。(I67659、b/249688556、b/250838918)
1.0.0 版
2022 年 10 月 24 日
發布 androidx.compose.material3:material3:1.0.0
和 androidx.compose.material3:material3-window-size-class:1.0.0
。查看 1.0.0 版的修訂項。
1.0.0 的主要功能
這是 Compose Material 3 的第一個穩定版本!
Material Design 3 主題設定和 Material You 動態顏色
Material Design 3 元件
- 徽章
- 底部應用程式列
- 按鈕
- FAB 和 延伸的 FAB
- 資訊卡
- 核取方塊
- 方塊
- 對話方塊
- 分隔線
- 下拉式選單
- 清單
- 導覽列
- 導覽匣
- 導覽邊欄
- 進度指標
- 圓形按鈕
- 滑桿
- 切換鈕
- 分頁
- 文字欄位
- 頂端應用程式列
- 圖示
- 文字
- 途徑
- 版面配置
- 內容顏色
視窗大小類別
material3-window-size-class
是一個新程式庫,能夠支援視窗大小類別,也就是一組一致認可的可視區域中斷點,可讓您設計、開發及測試可調整大小的應用程式版面配置。您可以使用calculateWindowSizeClass
擷取視窗大小類別執行個體,以用於決定使用者介面的顯示方式,例如,以較大的視窗大小顯示導覽邊欄,而非底部導覽列。如需更多資訊和用途範例,請參閱WindowSizeClass
的 API 參考資料說明文件。詳情請參閱這篇網誌文章!
1.0.0-rc01 版
2022 年 10 月 5 日
發布 androidx.compose.material3:material3:1.0.0-rc01
和 androidx.compose.material3:material3-window-size-class:1.0.0-rc01
。查看 1.0.0-rc01 版的修訂項。
API 變更
- 新增了支援文字到文字欄位 API 的運算單元參數 (Iaac0d、b/227146125)
1.0.0-beta03 版
2022 年 9 月 21 日
發布 androidx.compose.material3:material3:1.0.0-beta03
和 androidx.compose.material3:material3-window-size-class:1.0.0-beta03
。查看 1.0.0-beta03 版的修訂項。
API 變更
ExposedDropdownMenuDefaults
現在會顯示選單項目的邊框間距值 (I34ee1)ExposedDropdownMenuBoxScope
現在有Modifier.menuAnchor()
修飾符,此修飾符應會傳遞給文字欄位,以便提供適當的 a11y 行為。(I27fa3)- 為目前的 Slider API 新增兩個超載方法,可讓使用者傳遞指標或軌跡來填入滑桿。(I21c00)
修正錯誤
- 將 On Error 容器的深色主題對應更新為色調 90 (Ic5612)
- 修正以下問題:允許為小型 Material 3 頂端應用程式列設定透明背景。(I645e2、b/245575782)
1.0.0-beta02 版
2022 年 9 月 7 日
發布 androidx.compose.material3:material3:1.0.0-beta02
和 androidx.compose.material3:material3-window-size-class:1.0.0-beta02
。查看 1.0.0-beta02 版的修訂項。
API 變更
- 在 beta01 版中,m3 元件引入的預設元件插邊不再納入 IME 插邊。
- Material3 Scaffold 元件現在擁有
contentWindowInsets
參數,可指定要為內容版面處理的插邊數量。(Icf11a、b/243713323) - 淘汰實驗性 Material 3
SmallTopAppBar
函式,並引入同等TopAppBar
函式。請將使用方式遷移至新的函式。(I74404、b/226918634) - 新增對頂端應用程式列快速滑過和貼齊行為的控制項。(I15c81)
- 從 Divider 中移除 startIndent,將顏色移至最後一個參數。(If7be2)
修正錯誤
- 讓對話方塊在顯示時通知字詞 Dialog,便於 TalkBack 使用者辨識對話方塊。(I857ef)
1.0.0-beta01 版
2022 年 8 月 24 日
發布 androidx.compose.material3:material3:1.0.0-beta01
和 androidx.compose.material3:material3-window-size-class:1.0.0-beta01
。查看 1.0.0-beta01 版的修訂項。
API 參考資料
如要查看最新的主題設定、元件和其他可用的可組合項,請參閱 Compose Material 3 API 參考資料總覽。
API 變更
- 更新了 Material 3 頂端應用程式列,以呈現完全收合狀態至完全展開狀態。此外,將
TopAppBarDefaults
行為函式更新為 Composables,並針對其頂端應用程式列狀態和動畫規格提供預設值 (I642b3)。 - 更新了懸浮動作按鈕 (FAB) 元件簽章以符合介面 API (I3afaa)
- 新增了適用於頂端應用程式列、導覽匣、導覽列和邊欄的插邊內建支援機制。無論是單獨使用或與 Scaffold 搭配使用,這些元件都會為開發人員自動處理插邊。注意:這項變更不會自動處理狀態列圖示以及狀態列和導覽列的透明度。請繼續手動處理,確保提供最佳的無邊框體驗。(I7e4e6、b/183161866)
- 更新了元件預設值以減少 API 介面,藉此提升日後的彈性與效能。(I31820)
- 重新安排方塊和導覽匣工作表參數的順序,藉此在 API 內維持一致性 (I45d0b)
- 將
startIndent
從 Divider 中移除,並將顏色移到最後一個參數 (If7be2)。
1.0.0-alpha16 版
2022 年 8 月 10 日
發布 androidx.compose.material3:material3:1.0.0-alpha16
和 androidx.compose.material3:material3-window-size-class:1.0.0-alpha16
。查看 1.0.0-alpha16 版的修訂項。
新功能
- 支援在導覽匣中指定自訂寬度。(Ia7f10)
API 變更
- 重新排列 Tab 和 Leading 圖示分頁參數的順序,藉此在 API 內保持一致 (Ie2637)
- 將
BadgeDefaults
標示為實驗性質。(I98ef3) - 移除已淘汰的導覽匣函式。(I4f2db)
- 重新安排 Material 3 中 Slider 參數的順序,藉此在 API 內維持一致性 (I0aee7)
- 重新安排
NavigationBar
和NavigationRail
參數的順序,藉此在 API 內維持一致性 (I51cda) - 重新安排 Material 3 中的參數順序,藉此在 API 內維持一致性。(If4ae1)
- 重新安排 Material 3 中 Slider 參數的順序,藉此在 API 內維持一致性 (I62673)
- 將 icons 參數重新命名為 actions,藉此與頂端應用程式列保持一致 (Id75be)
- 將
Badge
和BadgedBox
標示為實驗性質,因為目前仍可大量使用錨點對齊。(I1712e、b/236524516) - 將圖示按鈕變化版本的
@ExperimentalMaterial3Api
註解變更為@OptIn
(I070b5) - 將導覽匣的內容與自身的可組合項區隔開來,以便支援指定自訂寬度。(Ia7f10)
- 從
MenuDefaults
和TabDefaults
移除Divider
(I4e33c)
1.0.0-alpha15 版
2022 年 7 月 27 日
發布 androidx.compose.material3:material3:1.0.0-alpha15
和 androidx.compose.material3:material3-window-size-class:1.0.0-alpha15
。查看 1.0.0-alpha15 版的修訂項。
新功能
- 允許從頂端應用程式列本身拖曳該列。(I65c00、b/205873416)
API 變更
- 更新
FilterChip
和ElevatedFilterChip
API 以移除selectedIcon
運算單元,並推廣重複使用leadingIcon
以顯示所選狀態。(Ie5dc2) - 新增紗罩遮擋和外框變化版本的顏色角色。(Id6d54)
- 修正可組合項預設值的命名慣例。(I62b27)
- 將
ListItemDefaults
和ListItemColors
標示為實驗性質。(I1f3ec) - 變更頂端應用程式列 API,以更準確地反映其狀態屬性的意義。此外,請將頂端應用程式列 API 標示為實驗功能。(Ic0ad8)
- 文字選取顏色現已新增至
TextFieldColors
,以提高曝光度。(Iba1b8) - 新增
ButtonDefault.ButtonWithIconContentPadding
以與包含圖示的按鈕搭配使用。(I2bf9c) - 文字欄位已標示為實驗性質,讓日後的 API 變更更具彈性。(I127b5)
- 已從
Checkbox
函式中移除@ExperimentalMaterial3Api
註解。(I5eefc) - 已從
RadioButton
函式中移除@ExperimentalMaterial3Api
註解。(I17e2a) - 已從非互動式資訊卡中移除
@ExperimentalMaterial3Api
註解。(I9bd49) - 更新各種元件預設物件,包括顏色、形狀等 (I96e11)。
修正錯誤
- 已從輸入方塊範例中移除無法運作的結尾圖示,以免在目錄應用程式中混淆使用者 (I9846a)。
1.0.0-alpha14 版
2022 年 6 月 29 日
發布 androidx.compose.material3:material3:1.0.0-alpha14
和 androidx.compose.material3:material3-window-size-class:1.0.0-alpha14
。查看 1.0.0-alpha14 版的修訂項。
新功能
- 新增了 M3 清單實作,請查看說明文件中的使用範例 (Id7a20)
API 變更
- 將參數名稱從值變更為
RangeSlider
中的值 (I3b79a) - API 變更為
InputChip
實作,以便根據 Material Design 規格支援可選取狀態。為特定停用狀態的FilterChip
顏色提供額外支援 (I55244、b/235792432)。 - 新增
BottomAppBar
預設 FAB (Ida4c8) - 已新增
ColorScheme.surfaceColorAtElevation
(Id41af) - Compose 程式庫中的介面現為使用 jdk8 預設介面方法建構 (I5bcf1)
WindowWidthSizeClass
和WindowHeightSizeClass
現在實作 Comparable,使其得以使用運算子 (<、<=、>=、>) 和其他 API 比較。(I747d0)
修正錯誤
- 更新標記範例以提供更多實質的內容說明。(I10b9d)
- 在 Material 3 目錄的主題挑選工具中加入使用系統字型大小的選項。(I10605)
- 加入標記的程式碼範例和不確定進度指標。(I8fbe0)
1.0.0-alpha13 版
2022 年 6 月 1 日
發布 androidx.compose.material3:material3:1.0.0-alpha13
和 androidx.compose.material3:material3-window-size-class:1.0.0-alpha13
。查看 1.0.0-alpha13 版的修訂項。
API 變更
- 支援在設定變更時維持最上方的應用程式列位置。(I10459、b/216160958)
1.0.0-alpha12 版
2022 年 5 月 18 日
發布 androidx.compose.material3:material3:1.0.0-alpha12
和 androidx.compose.material3:material3-window-size-class:1.0.0-alpha12
。查看 1.0.0-alpha12 版的修訂項。
修正錯誤
- 滑桿父項現可設定 0 寬度 (b/231707291)。
1.0.0-alpha11 版
2022 年 5 月 11 日
發布 androidx.compose.material3:material3:1.0.0-alpha11
和 androidx.compose.material3:material3-window-size-class:1.0.0-alpha11
。查看 1.0.0-alpha11 版的修訂項。
新功能
- 將
RangeSlider
新增至 Material 3 (I18e38) - 新增 Material3
AssistChip
和InputChip
支援 (I0d25a) - 新增 Material3
FilterChip
和SuggestionChip
支援 (I9fdf3)
API 變更
- 已重新命名
TextFieldDefaults.BorderStroke
可組合項,該可組合項用於繪製OutlinedTextField
至TextFieldDefaults.BorderBox
的框線。(I5f295)。 - 切換 m3 視覺效果 (Iab30e)
- 允許將顏色傳遞至標準圖示按鈕。(Ia2445)
修正錯誤
- 在 material3/Scaffold 新增 Lint 檢查功能,確保使用內部邊框間距 (I72293、b/226951418)
1.0.0-alpha10 版
2022 年 4 月 20 日
發布 androidx.compose.material3:material3:1.0.0-alpha10
和 androidx.compose.material3:material3-window-size-class:1.0.0-alpha10
。查看 1.0.0-alpha10 版的修訂項。
新功能
material3-window-size-class
是一個新程式庫,能夠支援視窗大小類別,也就是一組一致認可的可視區域中斷點,可讓您設計、開發及測試可調整大小的應用程式版面配置。您可以使用calculateWindowSizeClass
擷取視窗大小類別執行個體,以用於決定使用者介面的顯示方式,例如,以較大的視窗大小顯示導覽邊欄,而非底部導覽列。如需更多資訊和用途範例,請參閱WindowSizeClass
的 API 參考資料說明文件。如要進一步瞭解視窗大小類別的定義,請參閱有關支援不同螢幕大小的公開規範。
API 變更
- 新增
BottomAppBar
的預設懸浮動作按鈕 (FAB) 高度,從BottomAppBar
移除懸浮動作按鈕 (FAB) 結尾的 lambda。(I92c47) - 新增 Material3
FilledIconButton
、FilledTonalIconButton
和OutlinedIconButton
。(Ib2bda) - 更新 Material 3 Snackbar API,接受選擇性動作和關閉動作的顏色值。(Ibe4b4)
- 已從
PointerInputChange
淘汰部分使用功能 (向下或定位)。可使用consume()
徹底使用變更。可使用isConsumed
判斷其他使用者是否曾經使用過該變更。 PointerInputChange::copy()
現在會一律建立淺層複本。這表示只要使用一份副本,系統就會使用PointerInputChange
的副本。如要建立未繫結的PointerInputChange
,請改用建構函式。(Ie6be4、b/225669674)- 變更 Cards API,透過
CardColors
介面接收容器和內容顏色,並支援已停用的可點擊資訊卡狀態。(I927df) - 將 Material 3 文字欄位中的
backgroundColor
參數重新命名為containerColor
,以便改善與其他元件的一致性。(I6fbd9)
修正錯誤
- 更新標準
IconButton
,使其符合 Material3 規格。(I09eab) - 將 material3 Scaffold 頂端列高度移至已傳遞到內容的邊框間距,這樣內容就可以在頂端應用程式列下方顯示。如果忽略
PaddingValues
,頂端列可能會模糊處理內容。(I83cbc、b/217776202)
1.0.0-alpha09 版
2022 年 4 月 6 日
發布 androidx.compose.material3:material3:1.0.0-alpha09
。查看 1.0.0-alpha09 版的修訂項。
新功能
- 新增了 Material 3 Switch API (I2c3ad)
API 變更
- 新增了對文字欄位下拉式選單 (又稱「展開式下拉式選單」或「下拉式方塊」) 的支援 (I1b832)。
- 在 MaterialTheme 和 Shape 子系統中新增形狀參數。(I37426)
- 在
ExtendedFloatingActionButton
中新增展開參數,以便控制 FAB,將其展開或收合,並在切換為不同狀態時顯示動畫。針對已擴充的 FAB 新增 Extended FAB 超載,並針對無圖示的 ExtendedFAB 新增結尾文字。(Iba7f1)
1.0.0-alpha08 版
2022 年 3 月 23 日
發布 androidx.compose.material3:material3:1.0.0-alpha08
。查看 1.0.0-alpha08 版的修訂項。
新功能
- 新增了對 Material 3 文字欄位的支援 (I795cc、b/199377790)。
API 變更
修正錯誤
- 修正 Material3 按鈕,以便從 MaterialTheme 讀取其預設文字樣式值 (Ie62fc)。
1.0.0-alpha07 版
2022 年 3 月 9 日
發布 androidx.compose.material3:material3:1.0.0-alpha07
。1.0.0-alpha07 版包含以下修訂項目。
API 變更
- 更新 Material 3 Surface API,為可點擊式 Surface 復原超載函式,以及新增了函式,以便支援可選取和可切換的 Surface。(I4bf18)
LazyVerticalGrid
和LazyHorizontalGrid
現已穩定。(I307c0)。LazyVerticalGrid/LazyHorizontalGrid
和所有相關 API 已移至 .grid 子套件。請將匯入項目從 androidx.compose.foundation.lazy 更新為 androidx.compose.foundation.lazy.grid。(I2d446)- 還原
WindowInsetsControllerCompat
之前完全依賴 View 的變更,現在管理某些視窗旗標改回需要 Window。淘汰ViewCompat.getWindowInsetsController
以取代WindowCompat.getInsetsController
,以便確保使用正確的 Window (例如 View 在對話方塊內)。(I660ae、b/219572936) - 新增用於定義跨軸大小的
LazyVerticalGrid
API (I17723)
修正錯誤
- 更新 Card API,以追蹤 Surface API 的變更 (I3c8b9)
1.0.0-alpha06 版
2022 年 2 月 23 日
發布 androidx.compose.material3:material3:1.0.0-alpha06
。1.0.0-alpha06 版包含此連結所列的修訂項目。
API 變更
- 已新增
NavigationDrawerItem
,它代表導覽匣中的單一目的地 (Ic396f,b/218286829) - 已將
PermanentNavigationDrawer
和DismissibleNavigationDrawer
新增為實驗性 API。這些導覽匣非常適合大螢幕裝置使用。(I5f8ab、b/218286829) - 新增了 Material 3 底部應用程式列支援 (Ic432a)
NavigationDrawer
已重新命名為ModalNavigationDrawer
(I1807d、b/218286829)- 新增了 Material 3 Slider 類別和權杖 (I1ccee)
- 新增了 Tab 實作,請查看說明文件中的使用範例 (Ie0146)
修正錯誤
- 修正了以下問題:
TalkBack
螢幕閱讀器線性導覽選取了空白的頂端應用程式列標題。(Id4690) - 已將
IconSize
新增至FloatingActionButtonDefaults
。(Ia71cf) - 修正使用
LazyColumn
新增長文字內容時,無法顯示AlertDialog
按鈕的問題。(Ib2cc9、b/216663029)
1.0.0-alpha05 版
2022 年 2 月 9 日
發布 androidx.compose.material3:material3:1.0.0-alpha05
。1.0.0-alpha05 版包含此連結所列的修訂項目。
新功能
新增了 Material Design 3 元件
API 變更
- 已淘汰
Surface
函式,該函式會接收 onClick 回呼。應使用InteractionSource
和Modifier.clickable()
來建立可點擊途徑。(I211c6) - 新增了支援 FAB 的點按式和聚焦式提升權限。(Ibb584)
- 變更了
Surface
API,以便接收 InteractionSource,這可以控制其在不同狀態下的外觀。(Iafbc8)
修正錯誤
- 在動態顏色配置中新增了缺少的第三級顏色 (I456c4、b/214588434)
1.0.0-alpha04 版
2022 年 1 月 26 日
發布 androidx.compose.material3:material3:1.0.0-alpha04
。查看 1.0.0-alpha04 版的修訂項。
API 變更
- 將
NonRestartableComposable
新增至屬於現有方法超載且無複雜邏輯的方法。如此一來,對於呼叫內部函式中重複的所有參數,可減少編譯器產生的記憶檢查 (等於)。(I90490) - 新增了 Material 3 分割線。(Ica5fc)
- 使用實驗性 API 註解標記 Checkbox 和 RadioButton。(Ie44bb)
- 開始支援 Material 3 進度指標 (Iff232、b/205023841)。
修正錯誤
- 將已停用的
TextButton's
容器顏色更新為透明 (I6b248,b/213339737)
1.0.0-alpha03 版
2022 年 1 月 12 日
發布 androidx.compose.material3:material3:1.0.0-alpha03
。查看 1.0.0-alpha03 版的修訂項。
修正錯誤
- 將
LocalIndication
新增至 Material 3 的MaterialTheme
。(I7ce4e) - 修正適用於 Checkbox 的圓角半徑 (I38b03、b/175198975、b/202309440)
依附元件更新
- 現在依附於 Kotlin
1.6.10
。
1.0.0-alpha02 版
2021 年 12 月 1 日
發布 androidx.compose.material3:material3:1.0.0-alpha02
。查看 1.0.0-alpha02 版的修訂項。
新功能
- 新增對 Checkbox 和 Radiobutton 的支援。
- 已更新為可與 Kotlin
1.6.0
相容
API 變更
- 從 Material 3 的 Scaffold 中移除導覽匣。(I04f51)
- 新增 Material 3
Checkbox
支援。(Id5542) - 新增 Material 3
RadioButton
支援。(I20334)
修正錯誤
- 將
IconButton
漣漪半徑從 40 dp 降到 20 dp。(I68bbe、b/206674345) Text
的通訊埠字串快速路徑從compose.material
中進行變更 (I30b03)- 修正系統一律啟用硬式編碼按鈕的問題。(Iea832、b/205335456)
1.0.0-alpha01 版
2021 年 10 月 27 日
發布 androidx.compose.material3:material3:1.0.0-alpha01
。1.0.0-alpha01 版包含此連結所列的修訂項目。
新功能
Material Design 3 主題設定和 Material You 動態顏色
Material Design 3 元件
詳情請參閱 Compose 指南中 Material 主題設定的 Material Design 3 和 Material You 一節。