You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Compose开发疑问:如何正确选用Material颜色体系中的颜色命名?

Android Compose 主题颜色选择指南

核心逻辑:按「角色」选颜色,而非固定色值

Compose的Material Design颜色体系核心是功能角色优先,不是记“primary对应蓝色”,而是看颜色在UI里承担的作用:

  • primary:应用主色调,用于按钮、选中状态、核心标题等关键交互元素
  • onPrimary:在primary背景上显示的内容(文字/图标),保证和背景的对比度达标
  • background:页面的基础背景色
  • onBackground:在background上显示的常规正文内容
  • surface:卡片、弹窗这类“浮层容器”的背景色
  • onSurface:在surface容器上显示的内容

文本框的颜色选择示例

拿文本框场景举例:

  • 输入框背景:常规输入框用surface(和页面背景区分开的浮层感);强调型输入框可选用primaryContainer(Material 3新增的柔和主色调变体)
  • 输入文字:用onSurface(因为文本框属于surface类容器);禁用状态下改用onSurfaceVariant(低对比度的弱化色)
  • 光标/下划线:用primary(主色调强调交互状态)

快速上手的学习资料推荐

  1. 官方Material 3 Compose颜色角色文档:直接看官方整理的角色定义表格,每个颜色的适用场景列得直白,重点关注「Color roles」板块
  2. Compose官方示例项目:参考Jetpack Compose Samples里的表单、登录页实现,看成熟项目里的颜色搭配逻辑,直接复用比啃理论高效
  3. Material 3颜色生成工具:用官方颜色生成器输入主色,自动生成全套角色色,直观看到每个角色的色值和对应场景,辅助理解角色差异

内容的提问来源于stack exchange,提问作者Sebastian Lore

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 19:02:33