91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Compose Material 3 穩(wěn)定版現(xiàn)已發(fā)布 | 2022 Android 開發(fā)者峰會(huì)

谷歌開發(fā)者 ? 來源:未知 ? 2022-11-21 18:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

30755d3e-6984-11ed-8abf-dac502259ad0.png

作者 /Android 開發(fā)技術(shù)推廣工程師 Gurupreet Singh

首個(gè)穩(wěn)定版 Compose Material 3 現(xiàn)已發(fā)布。借助此內(nèi)容庫(kù),您可以使用 Material Design 3 (新一代 Material Design) 構(gòu)建 Jetpack Compose 界面。立即開始在應(yīng)用中使用 Material Design 3 吧!

  • Compose Material 3https://developer.android.google.cn/reference/kotlin/androidx/compose/material3/package-summary
  • Material Design 3https://m3.material.io/
*文中交替使用的術(shù)語 "Material Design 3"、"Material 3" 和 "M3" 均指代同一內(nèi)容。

Material 3 不僅包含更新后的主題和組件、動(dòng)態(tài)配色等個(gè)性化功能,還旨在與最新的 Android 視覺風(fēng)格和系統(tǒng)界面相得益彰。

30a8980c-6984-11ed-8abf-dac502259ad0.png

△ 多個(gè)使用 Material Design 3 主題的應(yīng)用

您可以將 Compose Material 3 依賴項(xiàng)添加到 build.gradle 文件中,即可開始在應(yīng)用中使用 Material Design 3:
// 在模塊 build.gradle 中添加依賴項(xiàng)


執(zhí)行“androidx.compose.material3$material3_version”

注意: 您可以前往 Compose Material 3 版本頁面了解最新的 M3 版本:

https://developer.android.google.cn/jetpack/androidx/releases/compose-material3

配色方案

Material 3 不僅提供更廣泛的、更細(xì)粒度的顏色自定義選項(xiàng),還提供開箱即用的淺色和深色配色方案。借助 Material Theme Builder,您可以使用核心顏色生成自定義配色方案,并選擇導(dǎo)出 Compose 主題代碼。您可以閱讀更多關(guān)于配色方案及顏色角色的內(nèi)容。

30d95f50-6984-11ed-8abf-dac502259ad0.png

△用于導(dǎo)出 Material 3 配色方案的 Material Theme Builder

  • Material Theme Builderhttps://material.io/material-theme-builder
  • 更多關(guān)于配色方案及顏色角色的內(nèi)容https://m3.material.io/styles/color/the-color-system/key-colors-tones

動(dòng)態(tài)配色

動(dòng)態(tài)配色源自用戶的壁紙,可應(yīng)用于應(yīng)用和系統(tǒng)界面中。
  • 動(dòng)態(tài)配色

    https://m3.material.io/styles/color/dynamic-color/overview

動(dòng)態(tài)配色適用于 Android 12 (API 級(jí)別 31) 及更高版本的系統(tǒng)。如果系統(tǒng)支持動(dòng)態(tài)配色,則可以設(shè)置動(dòng)態(tài) ColorScheme。如果不支持,您可以轉(zhuǎn)而使用自定義的深色或淺色 ColorScheme

30e81cc0-6984-11ed-8abf-dac502259ad0.png

Reply 示例: 動(dòng)態(tài)壁紙主題 (左) 和默認(rèn)應(yīng)用主題 (右)
  • Reply 示例

    https://github.com/android/compose-samples/tree/main/Reply

ColorScheme 類為構(gòu)建器提供函數(shù)以創(chuàng)建動(dòng)態(tài)和自定義的深色淺色配色方案:

  • 深色

    https://developer.android.google.cn/reference/kotlin/androidx/compose/material3/package-summary#dynamiclightcolorscheme

  • 淺色

    https://developer.android.google.cn/reference/kotlin/androidx/compose/material3/package-summary#dynamicdarkcolorscheme

Theme.kt
// 動(dòng)態(tài)配色適用于 Android 12 及更高版本的系統(tǒng)
val dynamicColor = Build.VERSION.SDK_INT >= Build.VERSION_CODES.S
val colorScheme = when {
  dynamicColor && darkTheme -> dynamicDarkColorScheme(LocalContext.current)
  dynamicColor && !darkTheme -> dynamicLightColorScheme(LocalContext.current)
  darkTheme -> darkColorScheme(...)
  else -> lightColorScheme(...)
}


MaterialTheme(
  colorScheme = colorScheme,
  typography = typography,
  shapes = shapes
) {
  // M3 應(yīng)用內(nèi)容

Material 組件

Compose Material 3 API 包含大量全新和經(jīng)過優(yōu)化的 Material 組件,且我們計(jì)劃在未來的版本中添加更多組件。許多 Material 組件 (如 Card、RadioButtonCheckBox) 已不再是實(shí)驗(yàn)性組件;這些組件的 API 十分穩(wěn)定,可以在沒有 ExperimentalMaterial3Api 注釋的情況使用。

M3 Switch 組件采用全新界面,支持符合無障礙性的最小觸摸目標(biāo)尺寸、顏色映射,以及不同的 Switch 滑塊圖標(biāo)選項(xiàng)。該界面增加了觸摸目標(biāo)的尺寸,同時(shí)增加了用戶互動(dòng)時(shí)的滑塊尺寸,從而為用戶提供反饋: 滑塊正在與之互動(dòng)。

31126692-6984-11ed-8abf-dac502259ad0.gif

△Material 3 Switch 滑塊互動(dòng)
Switch(
      checked = isChecked,
      onCheckedChange = { /*...*/ },
      thumbContent = {
          Icon(
              imageVector = Icons.Default.Check,
              contentDescription = stringResource(id = R.string.switch_check)
          )
      },
)

抽屜式導(dǎo)航欄組件現(xiàn)在提供封裝容器表,以便單獨(dú)更改內(nèi)容的顏色、形狀和高度。

抽屜式導(dǎo)航欄組件 內(nèi)容
ModalNavigationDrawer ModalDrawerSheet
PermanentNavigationDrawer PermanentDrawerSheet
DismissableNavigationDrawer DismissableDrawerSheet
316702e2-6984-11ed-8abf-dac502259ad0.png

△ModalNavigationDrawer

其中內(nèi)容封裝在 ModalDrawerSheet 中
ModalNavigationDrawer {
    ModalDrawerSheet(
        drawerShape = MaterialTheme.shapes.small,
        drawerContainerColor = MaterialTheme.colorScheme.primaryContainer,
        drawerContentColor = MaterialTheme.colorScheme.onPrimaryContainer,
        drawerTonalElevation = 4.dp,
    ) {
        DESTINATIONS.forEach { destination ->
            NavigationDrawerItem(
                selected = selectedDestination == destination.route,
                onClick = { ... },
                icon = { ... },
                label = { ... }
            )
        }
    }
}

除現(xiàn)有的應(yīng)用欄外,我們還推出了全新的CenterAlignedTopAppBar。該欄可用于應(yīng)用的主要根網(wǎng)頁: 您可以借助主頁和操作圖標(biāo)顯示應(yīng)用名稱或頁面標(biāo)題。

CenterAlignedTopAppBar(
          title = {
              Text(stringResources(R.string.top_stories))
          },
          scrollBehavior = scrollBehavior,
          navigationIcon =  { /* Navigation Icon */},
          actions = { /* App bar actions */}
)

您可以前往Compose Material 3 API 參考文檔概覽,查看 M3 最新組件和布局。也歡迎您關(guān)注版本發(fā)布頁面,即時(shí)獲取全新的和更新后的 API。

  • Compose Material 3 API 參考文檔概覽

    https://developer.android.google.cn/reference/kotlin/androidx/compose/material3/package-summary#overview

  • 版本發(fā)布頁面

    https://developer.android.google.cn/jetpack/androidx/releases/compose-material3

排版

Material 3 將排版的命名及分組簡(jiǎn)化為: 每項(xiàng)內(nèi)容都有大、中、小三種字體大小可供選擇,總計(jì) 15 種文本樣式。 Typography構(gòu)造函數(shù)為每種樣式提供默認(rèn)值,因此您無需設(shè)置您不想自定義的參數(shù):
val typography = Typography(
  titleLarge = TextStyle(
      fontWeight = FontWeight.SemiBold,
      fontSize = 22.sp,
      lineHeight = 28.sp,
      letterSpacing = 0.sp
  ),
  titleMedium = TextStyle(
      fontWeight = FontWeight.SemiBold,
      fontSize = 16.sp,
      lineHeight = 24.sp,
      letterSpacing = 0.15.sp
  ),
  ...
}

如需自定義排版,您可以更改 TextStyle字體相關(guān)的屬性 (如 fontFamilyletterSpacing)。
bodyLarge = TextStyle(
  fontWeight = FontWeight.Normal,
  fontFamily = FontFamily.SansSerif,
  fontStyle = FontStyle.Italic,
  fontSize = 16.sp,
  lineHeight = 24.sp,
  letterSpacing = 0.15.sp,
  baselineShift = BaselineShift.Subscript
)

  • TextStylehttps://developer.android.google.cn/reference/kotlin/androidx/compose/ui/text/TextStyle
  • 字體相關(guān)https://developer.android.google.cn/reference/kotlin/androidx/compose/ui/text/font/package-summary

形狀

Material 3 形狀比例定義了容器邊角的樣式,提供從方形到正圓形的一系列不同角度。

不同的形狀大小如下:
  • 超小號(hào)

  • 小號(hào)

  • 中號(hào)

  • 大號(hào)

  • 超大號(hào)

31b27a42-6984-11ed-8abf-dac502259ad0.png

將 Material Design 3 的不同形狀作為默認(rèn)值用于不同組件每種形狀都有一個(gè)默認(rèn)值,但您可以進(jìn)行覆蓋:
val shapes = Shapes(
  extraSmall = RoundedCornerShape(4.dp),
  small = RoundedCornerShape(8.dp),
  medium = RoundedCornerShape(12.dp),
  large = RoundedCornerShape(16.dp),
  extraLarge = RoundedCornerShape(28.dp)
)

您可以前往官方網(wǎng)站,閱讀更多關(guān)于應(yīng)用形狀的內(nèi)容:

https://m3.material.io/styles/shape/overview

窗口大小類

Jetpack Compose 和 Material 3 提供了幫助您的應(yīng)用實(shí)現(xiàn)自適應(yīng)的窗口大小工件。如需開始使用,您可以將 Compose Material 3 窗口大小類依賴項(xiàng)添加到您的 build.gradle 文件中:

// 在模塊 build.gradle 中添加依賴項(xiàng)


implementation "androidx.compose.material3$material3_version"

窗口大小類將大小劃分到標(biāo)準(zhǔn)大小的存儲(chǔ)分區(qū)中,這些存儲(chǔ)分區(qū)是旨在針對(duì)大部分特殊情況優(yōu)化應(yīng)用的斷點(diǎn)。

31be50e2-6984-11ed-8abf-dac502259ad0.png

用于將設(shè)備劃分到不同大小的存儲(chǔ)分區(qū)中的 WindowWidthSize 類

您可以查看 Reply Compose 示例,詳細(xì)了解自適應(yīng)應(yīng)用和窗口大小類的實(shí)現(xiàn):

https://github.com/android/compose-samples/tree/main/Reply

窗口邊襯區(qū)支持

M3 組件 (如頂部應(yīng)用欄、抽屜式導(dǎo)航欄、普通導(dǎo)航欄和側(cè)邊欄) 包含對(duì)窗口邊襯區(qū)的內(nèi)置支持。無論是單獨(dú)使用還是與 Scaffold 配合使用,這些組件都能自動(dòng)處理由狀態(tài)欄、導(dǎo)航欄和系統(tǒng)界面的其他部分確定的邊襯區(qū)。 Scaffold 現(xiàn)在支持 contentWindowInsets 參數(shù),該參數(shù)有助于為 Scaffold 內(nèi)容確定邊襯區(qū)。 只有當(dāng) topBarbottomBar 無法在 Scaffold 中使用時(shí),您才需要考慮使用 Scaffold 邊襯區(qū),因?yàn)檫@些組件會(huì)以組件級(jí)別處理邊襯區(qū)。
Scaffold(
    contentWindowInsets = WindowInsets(16.dp)
) {
    // Scaffold content
}

資源

隨著 Compose Material 3 迎來穩(wěn)定版本,現(xiàn)在是全面了解該內(nèi)容庫(kù)并準(zhǔn)備好在應(yīng)用中使用的絕佳時(shí)機(jī)。您可以查看下方資源,即刻開始使用。

  • 完整的 Material 3 和 Compose 示例 Reply:

    https://github.com/android/compose-samples/tree/main/Reply
  • 開始將 Material 3 添加至您應(yīng)用的指南:https://developer.android.google.cn/jetpack/compose/themes/material3
  • Material 2 升級(jí)至 Material 3 的遷移指南:

    https://developer.android.google.cn/jetpack/compose/themes/material2-material3

  • Jetpack Compose 示例 GitHub 代碼庫(kù),您可以在其中找到各種使用 Material 3 的最新示例:

    https://github.com/android/compose-samples

  • StackOverflow中的 Compose 社區(qū):

    https://stackoverflow.com/questions/tagged/material-desig

  • Kotlin Slack 群組

    http://slack.kotlinlang.org/

  • 您可以在錯(cuò)誤追蹤器,將發(fā)現(xiàn)的問題分享給我們并追蹤功能請(qǐng)求:

    https://issuetracker.google.com/issues/new?component=742043

歡迎您持續(xù)關(guān)注我們,及時(shí)了解更多開發(fā)技術(shù)和產(chǎn)品更新等資訊動(dòng)態(tài)。

31c8f132-6984-11ed-8abf-dac502259ad0.gif

3213df76-6984-11ed-8abf-dac502259ad0.gif?點(diǎn)擊屏末||即刻了解 Compose Material 3 更多相關(guān)內(nèi)容

321c7230-6984-11ed-8abf-dac502259ad0.png

3233bb0c-6984-11ed-8abf-dac502259ad0.gif

336fd852-6984-11ed-8abf-dac502259ad0.png


原文標(biāo)題:Compose Material 3 穩(wěn)定版現(xiàn)已發(fā)布 | 2022 Android 開發(fā)者峰會(huì)

文章出處:【微信公眾號(hào):谷歌開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 谷歌
    +關(guān)注

    關(guān)注

    27

    文章

    6254

    瀏覽量

    111385

原文標(biāo)題:Compose Material 3 穩(wěn)定版現(xiàn)已發(fā)布 | 2022 Android 開發(fā)者峰會(huì)

文章出處:【微信號(hào):Google_Developers,微信公眾號(hào):谷歌開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【扔物線】Jetpack Compose:從上手到進(jìn)階再到高手資源課程

    未來安卓必備技能:Compose 上手、進(jìn)階、成神指南 隨著安卓應(yīng)用開發(fā)的快速進(jìn)步,Jetpack Compose 成為未來安卓開發(fā)者必須掌握的技能之一。
    的頭像 發(fā)表于 03-06 11:39 ?95次閱讀

    谷歌Android Studio Otter 3功能更新發(fā)布

    我們很高興地宣布,Android Studio Otter 3 功能更新穩(wěn)定版現(xiàn)已發(fā)布!本次更新干貨滿滿,不僅重磅升級(jí)了
    的頭像 發(fā)表于 01-28 14:15 ?596次閱讀
    谷歌<b class='flag-5'>Android</b> Studio Otter <b class='flag-5'>3</b>功能更新<b class='flag-5'>發(fā)布</b>

    2025華為開發(fā)者大賽暨開發(fā)者年度會(huì)議成功舉辦

    12月27日-12月28日,以“成就AI原生時(shí)代先鋒開發(fā)者”為主題的2025華為開發(fā)者大賽暨開發(fā)者年度會(huì)議在上海華為練秋湖研發(fā)中心舉辦。本次會(huì)議旨在匯聚先鋒開發(fā)力量,搭建開放共贏的生態(tài)
    的頭像 發(fā)表于 12-31 13:32 ?664次閱讀

    2025開源鴻蒙開發(fā)者激勵(lì)計(jì)劃正式啟動(dòng)

    舉辦,2025開源鴻蒙開發(fā)者激勵(lì)計(jì)劃在分論壇上正式發(fā)布。該計(jì)劃承載著開源社區(qū)對(duì)開發(fā)者群體的高度重視,旨在為廣大開發(fā)者提供更廣闊的發(fā)展通道與更具力度的支持體系,以激發(fā)創(chuàng)新活力,推動(dòng)開源鴻
    的頭像 發(fā)表于 11-27 14:44 ?668次閱讀

    元服務(wù)發(fā)布配置開發(fā)者服務(wù)信息

    您作為開發(fā)者的相關(guān)信息將面向元服務(wù)發(fā)布區(qū)域的用戶公開,其中客服聯(lián)系方式可能會(huì)提供給用戶,用于咨詢相關(guān)問題。 登錄AppGallery Connect,點(diǎn)擊“APP與元服務(wù)”。 選擇要發(fā)布的元服務(wù)
    發(fā)表于 10-31 17:58

    NVIDIA DRIVE AGX Thor開發(fā)者套件重磅發(fā)布

    這款由 NVIDIA DriveOS 7 驅(qū)動(dòng)的開發(fā)者套件能夠幫助開發(fā)者們打造出更安全的智能汽車和交通解決方案。
    的頭像 發(fā)表于 09-04 11:20 ?1378次閱讀

    曙光網(wǎng)絡(luò)SugonRI開發(fā)者社區(qū)正式上線

    在人工智能與工業(yè)深度融合的大潮中,工業(yè)軟件正在成為推動(dòng)產(chǎn)業(yè)升級(jí)的關(guān)鍵引擎。為了讓更多開發(fā)者快速掌握工業(yè)級(jí)編程技術(shù)、共享行業(yè)實(shí)踐成果,曙光網(wǎng)絡(luò)正式推出開發(fā)者社區(qū)——曙睿(SugonRI)開發(fā)者網(wǎng)站
    的頭像 發(fā)表于 09-04 09:58 ?954次閱讀

    NVIDIA Jetson AGX Thor開發(fā)者套件重磅發(fā)布

    開發(fā)者與未來創(chuàng)造們,準(zhǔn)備好迎接邊緣AI的史詩級(jí)革新了嗎?NVIDIA以顛覆性技術(shù)再次突破極限,正式推出Jetson AGX Thor開發(fā)者套件!作為繼傳奇產(chǎn)品Jetson AGX Orin之后
    的頭像 發(fā)表于 08-28 14:31 ?1555次閱讀

    全新導(dǎo)航庫(kù)Jetpack Navigation 3發(fā)布

    在應(yīng)用中的不同屏幕之間導(dǎo)航理應(yīng)簡(jiǎn)單明了。然而,構(gòu)建穩(wěn)健、可擴(kuò)展且賞心悅目的導(dǎo)航體驗(yàn)卻并非易事。多年來,Jetpack Navigation 庫(kù)一直是開發(fā)者的重要工具,但隨著 Android 界面格局的演變,尤其是 Jetpack Com
    的頭像 發(fā)表于 08-06 13:56 ?1278次閱讀

    HDC 2025開發(fā)者主題演講精彩回顧

    日前,華為開發(fā)者大會(huì)(HDC 2025)進(jìn)入第二天,行業(yè)領(lǐng)袖、技術(shù)專家、全球開發(fā)者齊聚現(xiàn)場(chǎng),共同見證這場(chǎng)科技盛會(huì)。在開發(fā)者主題演講中,華為技術(shù)專家深入解析HarmonyOS的最新技術(shù)、體驗(yàn)創(chuàng)新以及
    的頭像 發(fā)表于 07-09 11:20 ?1312次閱讀

    Android 16更新亮點(diǎn)介紹

    Android 近期在整個(gè)平臺(tái)上推出了一系列更新,包括:發(fā)布 Android 16 并為開發(fā)者和用戶提供詳細(xì)信息,推出改進(jìn)外接顯示設(shè)備上 Andro
    的頭像 發(fā)表于 07-05 11:37 ?3754次閱讀

    NVIDIA Isaac Sim和Isaac Lab現(xiàn)已推出早期開發(fā)者預(yù)覽版

    NVIDIA 發(fā)布了機(jī)器人仿真參考應(yīng)用 Isaac Sim 和機(jī)器人學(xué)習(xí)框架 Isaac Lab 的開發(fā)者預(yù)覽版。開發(fā)者現(xiàn)在可以通過 GitHub 訪問早期版本,搶先體驗(yàn)先進(jìn)功能,用于在基于物理的仿真環(huán)境中構(gòu)建、訓(xùn)練和測(cè)試 AI
    的頭像 發(fā)表于 07-04 14:23 ?1806次閱讀

    九聯(lián)開鴻亮相華為開發(fā)者大會(huì)2025

    此前,6月20日-22日,華為開發(fā)者大會(huì)2025(HDC.2025)在松山湖科學(xué)城盛大開幕。華為開發(fā)者大會(huì)是華為面向全球開發(fā)者的年度技術(shù)盛會(huì),本次大會(huì)聚焦鴻蒙生態(tài)、AI技術(shù)及產(chǎn)業(yè)合作,吸引了全球超1.2萬名
    的頭像 發(fā)表于 06-26 14:31 ?1109次閱讀

    深開鴻C(jī)EO王成錄:開發(fā)者是開源鴻蒙生態(tài)的原點(diǎn)

    5月24日,深開鴻正式發(fā)布全國(guó)首款面向開發(fā)者的開源鴻蒙學(xué)習(xí)平臺(tái)——開鴻Bot系列產(chǎn)品。這是開源鴻蒙在開發(fā)者終端領(lǐng)域的關(guān)鍵落地,更是深開鴻貫徹“以開發(fā)者為中心”理念的里程碑舉措。深開鴻C(jī)
    的頭像 發(fā)表于 05-26 12:06 ?883次閱讀
    深開鴻C(jī)EO王成錄:<b class='flag-5'>開發(fā)者</b>是開源鴻蒙生態(tài)的原點(diǎn)

    Android 16的首個(gè)Beta版現(xiàn)已推出,升級(jí)功能有這些

    Android 16 的首個(gè) Beta 版現(xiàn)已推出,這是向開發(fā)者和早期體驗(yàn)開放試用的最好時(shí)機(jī)。您現(xiàn)在可以注冊(cè)任何受支持的 Pixel 設(shè)備,以便以 OTA 方式獲取此版本和未來的
    的頭像 發(fā)表于 03-14 10:58 ?1689次閱讀
    <b class='flag-5'>Android</b> 16的首個(gè)Beta版<b class='flag-5'>現(xiàn)已</b>推出,升級(jí)功能有這些