Skip to content

feat(avatar): 对齐移动端设计与组件能力 - #1090

Open
RSS1102 wants to merge 1 commit into
developfrom
rss1102/feat/avatar-design-alignment
Open

feat(avatar): 对齐移动端设计与组件能力#1090
RSS1102 wants to merge 1 commit into
developfrom
rss1102/feat/avatar-design-alignment

Conversation

@RSS1102

@RSS1102 RSS1102 commented Sep 6, 2026

Copy link
Copy Markdown
Collaborator

🤔 这个 PR 的性质是?

勾选规则:
1.只要有新增参数,就勾选”新特性提交“
2.只修改内部bug,未新增参数,才勾选”日常 bug 修复“
3.其他选项视具体改动判断

  • 日常 bug 修复
  • 新特性提交
  • 文档改进
  • 演示代码改进
  • 组件样式/交互改进
  • CI/CD 改进
  • 重构
  • 代码风格优化
  • 测试用例
  • 分支合并
  • 其他

🔗 相关 Issue

#1027

💡 需求背景和解决方案

Avatar 公开 Demo 的字符样式、头像组数量/尺寸、操作图标和尺寸区结构与移动端设计稿不一致;现有 variant 也不能准确表达“形状”职责,字符头像缺少实例级颜色与文字样式入口。

  • 新增 TAvatar.shapebackgroundColorforegroundColortextStyleshape 优先于 Theme,旧 variant 保留兼容并标记弃用。
  • 新增 TAvatarGroup.dimensionshapecascading,支持 44px 头像组以及左右层叠方向;保留既有右侧成员在上层的默认行为。
  • 字符头像按 large/medium/small 默认使用 20/16/14px、Semibold;实例颜色和文字样式按实例 > Theme > token 收敛。
  • Demo 统一为组件类型、特殊类型、组件尺寸三个模块,使用 96×96 官方头像资源与 TDesign user_add 图标,并移除公开页内部测试区。
  • 补充组件、Demo 结构与 Linux Flutter 3.32 明暗 Golden 回归;Avatar 生产代码覆盖率 97.78%。

Spec:specs/034-avatar-design-alignment

Light Dark
Avatar light Avatar dark

验证:Flutter 3.32.0、3.47.0 的组件测试和 Demo 测试均通过,两个版本 flutter analyze 均为 0 issues;Linux Flutter 3.32 明暗 Golden 非更新模式 2/2 通过;示例片段与 API 文档生成校验通过。

📝 更新日志

  • feat(TAvatar): 新增形状、实例颜色和字符文字样式能力,旧 variant 保持兼容

  • feat(TAvatarGroup): 新增成员尺寸、外框形状和层叠方向配置

  • fix(Avatar): 修正公开 Demo 的头像资源、字符样式、分组规格、操作图标与尺寸布局

  • 本条 PR 不需要纳入 Changelog

☑️ 请求合并前的自查清单

⚠️ 请自检并全部勾选全部选项⚠️

  • 标题遵循 Conventional Commits 格式:type(<scope>?): 修改描述
    示例:fix(TBottomTabBar): 修复 iconText 模式底部溢出
  • “相关 Issue”处带上修复的 Issue 链接或无关联 Issue
  • 已添加对应的 Spec 链接,或已由 Review 确认本次改动无需 Spec
  • 相关文档已补充或无须补充

@RSS1102 RSS1102 mentioned this pull request Sep 6, 2026
@github-actions

github-actions Bot commented Sep 6, 2026

Copy link
Copy Markdown
Contributor

完成

Web Demo

APK 下载

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant