ThemeData.useMaterial3 標誌預設值為 true
概述
#Material 庫已更新,以匹配最新的 Material Design 規範。更改包括新的元件、新的元件主題和更新的元件視覺效果。自此版本釋出以來,ThemeData.useMaterial3 預設設定為 true。
背景
#Flutter 的 Material 元件現已完全支援 Material 3,並且自 Flutter 3.16 起,Material 3 已成為預設樣式。
Material 3 元件的外觀主要由 ThemeData.colorScheme 和 ThemeData.textTheme 的值決定。ColorScheme 使建立深色和淺色主題更加容易,從而使您的應用既美觀又符合可訪問性要求。要進一步自定義 Material 3 元件的外觀,請將元件主題新增到您的 ThemeData 中,例如 ThemeData.segmentedButtonTheme 或 ThemeData.snackBarTheme。
此外,Material 3 透過使用緩動和持續時間令牌來改進動畫效果。這意味著 Material 2 的曲線已被重新命名,以包含“legacy”一詞,並且最終將被棄用和移除。
請檢視 Material 3 gallery 來測試所有新元件並將其與 Material 2 進行比較。
遷移指南
#在 3.16 版本釋出之前,這些更改是“選擇加入”的,透過在 ThemeData 上使用 useMaterial3 主題屬性。自此版本釋出以來,useMaterial3 預設設定為 true。您仍然可以透過在 MaterialApp 主題中指定 useMaterial3: false 來選擇退出 Material 3 版本的 Material 庫。
此外,一些元件無法簡單地更新,而是需要全新的實現。因此,當您看到 Material 3 執行時,您的 UI 可能會顯得有些奇怪。要解決此問題,請手動遷移到新元件,例如 NavigationBar。
有關更多詳細資訊,請檢視 GitHub 上的 Material 3 彙總問題。
時間線
#已於版本中釋出:3.13.0-4.0.pre
穩定版本:3.16
參考資料
#文件
API 文件
相關問題
相關 PR