Skip to content

Conversation

runoob-coder
Copy link
Contributor

@runoob-coder runoob-coder commented Sep 29, 2025

🤔 这个 PR 的性质是?

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

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

🔗 相关 Issue

#760
#721
#684
#601
#486
#374

💡 需求背景和解决方案

📝 更新日志

  • feat(theme): 组件深色模式适配

  • 优化调整所有组件样式,适配深色模式

  • fix(util): 修复主题json配置颜色hex字符串转Color

  • docs: 优化文档格式和内容

  • demo: 优化调整demo示例项目及代码演示,升级 Android 构建配置和依赖项以兼容在flutter 3.16.9至最新版(3.35.5)下运行,调整web预览iframe样式去除顶部边距

  • feat(empty): 空状态组件新增自定义icon图标

  • feat(calendar): 日历组件新增 useSafeArea 参数控制是否使用安全区域

  • fix(progress): 修复进度条状态更新时标签未刷新的问题,修复调整线形进度条样式

  • feat(picker): 更新选择器缺失的参数传递,新增 titleHeightleftPaddingrightPaddingbackgroundColorbackgroundColorpadding 等参数,非弹窗调用时可通过设置 header 控制顶部内容的显示隐藏

  • feat(date-picker): 新增onChange()事件回调

  • feat(notice-bar ): 新增content属性,废弃并兼容原有的context属性

  • chore(web): 覆盖web依赖项,解决与flutter_localizations的版本冲突问题,兼容flutter之前版本

  • chore(workflow): 移除预览构建中的脚本重写步骤

  • 本条 PR 不需要纳入 Changelog

todo

  • 主题生成脚本(计划写个cli)

🚀组件深色模式适配进度(已全部适配)

基础

  • Button 按钮
  • Divider 分割线
  • Fab 悬浮按钮
  • Icon 图标
  • Link 链接
  • Text 文本

导航

  • BackTop 返回顶部
  • Drawer 抽屉
  • Indexes 索引
  • NavBar 导航栏
  • SideBar 侧边栏
  • Steps 步骤条
  • TabBar 标签栏
  • Tabs 选项卡

输入

  • Calendar 日历
  • Cascader 级联选择器
  • Checkbox 多选框
  • DateTimePicker 日期选择器
  • Form 表单
  • Input 输入框
  • Picker 选择器
  • Radio 单选框
  • Rate 评分
  • Search 搜索框
  • Slider 滑动选择器
  • Stepper 步进器
  • Switch 开关
  • Textarea 多行文本框
  • TreeSelect 树形选择器
  • Upload 上传

数据展示

  • Avatar 头像
  • Badge 徽标
  • Cell 单元格
  • TimeCounter 计时器
  • Collapse 折叠面板
  • Empty 空状态
  • Footer 页脚
  • Image 图片
  • ImageViewer 图片预览
  • Progress 进度条
  • Result 结果
  • Skeleton 骨架屏
  • Swiper 轮播图
  • Table 表格
  • Tag 标签

反馈

  • ActionSheet 动作面板
  • Dialog 对话框
  • DropdownMenu 下拉菜单
  • Loading 加载
  • Message 全局提示
  • NoticeBar 消息提醒
  • Popover 弹出气泡
  • Popup 弹出层
  • PullDownRefresh 下拉刷新
  • SwipeCell 滑动操作
  • Toast 轻提示

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

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

  • pr目标分支为develop分支,请勿直接往main分支合并
  • 标题格式为:组件类名: 修改描述(示例:TDBottomTabBar: 修复iconText模式,底部溢出2.5像素)
  • ”相关issue“处带上修复的issue链接
  • 相关文档已补充或无须补充

- 支持3位HEX颜色值自动扩展为6位
- 使用字符串插值提升性能和可读性
- 统一处理颜色透明度逻辑
- 确保透明度范围在0到1之间
- 支持将HEX颜色扩展为8位AHEX格式
- 弃用backgroundColor属性并移除相关实现
- 优化代码结构与可读性
- 更新文本颜色引用以匹配新主题变量
- 改进代码高亮样式支持明暗模式切换
- 调整背景色值以适配设计系统更新
- 使用TDCellGroup和TDCell组件重构页面布局
- 移除自定义的demoRow方法
- 更新appBar标题文字颜色
- 移除背景色设置
- 简化版本号和发版日期的展示逻辑
- 删除了图标展示页面中不必要的白色背景色设置
- 保持页面背景与应用整体背景一致
- 简化了页面布局结构
- 移除页面背景色设置
- 将容器背景色由 whiteColor1 更改为 bgColorContainer
- 更新默认样式下的文字颜色为 textColorPrimary
- 更新禁用状态下的文字颜色为 textColorDisabled
- 调整图片加载状态的显示逻辑,优先处理 loading 和 error 状态
- 统一使用 TDTheme 颜色变量,替换原有的硬编码颜色值
- 优化图片容器背景色与提示图标颜色,提升视觉一致性
- 移除冗余的文本颜色设置,简化代码结构
- 更新图片类型展示示例,增强组件复用性与可维护性- 修复部分组件对齐方式与尺寸约束问题
- 增加对 FileImage 类型的支持并优化构造函数参数校验
- 重构示例页面布局,使演示内容更加清晰易读
- 添加 useSafeArea 属性,控制安全区域显示
- 更新组件内边距和间距,提升视觉效果
- 改进主题颜色配置,适配更多场景
- 将下拉菜单中的图标尺寸从 24 调整为 20
- 新增浮动按钮用于动态调整进度值
- 实现进度条值的加减控制逻辑
- 修复进度条状态更新时标签未刷新的问题
@runoob-coder runoob-coder changed the title TDTheme : 组件深色模式适配 TDTheme : 组件深色模式适配,优化调整组件样式 Oct 4, 2025
- 新增不使用弹窗、不带顶部内容的日期选择示例
- 为日期选择器添加 onChange 回调支持
- 支持自定义标题高度和分割线颜色
- 允许隐藏日期选择器头部内容
- 优化日期选择器内部逻辑与代码结构
- 完善空值处理,提升组件健壮性
- 调整部分参数默认值以提高易用性
- 支持通过 header 参数控制是否显示头部内容
- 新增 buildWithoutHeader 示例展示无头部选择器
- 优化标题显示逻辑,支持空标题不显示
- 新增 onChange 回调参数支持数据变化监听
-修复 linked picker 高度刷新的 hack 式解决方案
- 统一头部构建方法命名为 _buildHeader
- 移除标题为空时的冗余容器组件
- 新增长标题、内容的测试用例
- 支持单元格长按事件处理
- 更新多行带头像的描述文本长度
- 添加 TDCell 测试内容构建函数
- 调整标题与描述之间的间距处理逻辑
- 移除不必要的 SizedBox 高度设置
- 优化条件判断逻辑,提高代码可读性
- 添加待优化问题注释,指向具体 issue 链接
- 将开启状态下的轨道颜色从 brandColor7 更改为 brandNormalColor
- 格式化代码以提高可读性,将参数分行显示
- 移除了不再使用的 TDLoadingPainter 类及相关绘图逻辑,改用TDCircleIndicator组件
- 更新示例页面中开关组件的参数格式,增强一致性
- 移除AppBar标题的自定义文本样式
- 简化ApiWidget构造函数,移除visible属性
- 移除Visibility包装器,直接使用FutureBuilder
- 替换加载状态显示组件为TDLoading
-优化代码格式与空行处理
- 改进条件判断语句的可读性
- 移除自定义 AppBar 标题组件 TDText,使用标准 Text 组件
- 精简 TDCellGroup 和 TDCell 的属性配置
- 调整代码格式,统一缩进风格
- 移除多余的空行和换行符
- 统一函数声明的空格格式
- 添加 maxLines 参数断言,确保其值大于 0
- 调整构造函数参数格式,提升代码可读性
- 在 dispose 方法中释放控制器资源,防止内存泄漏
- 重构 UI 布局,将整体包裹在 Container 中并设置背景色
- 简化文本溢出处理方式,统一使用 TextOverflow.ellipsis
- 添加 todo 注释标记待优化的冗余逻辑
- 新增content属性用于设置文本内容,兼容旧版context属性
- 优化垂直滚动时的文本显示逻辑
- 改进图标和按钮的布局与点击处理
- 增加对content类型的有效性校验
- 修复水平滚动时宽度计算问题
- 更新示例页面中的使用方式和间距调整
- 使用 switch 表达式替代原有的 switch 语句以提高代码可读性
- 将字体获取逻辑内联到 textWidget 方法中,减少方法调用
- 保持原有字体大小映射关系不变
- 确保在不同 loading size 下正确应用对应字体样式
- 重新组织 TDSliderPage 类的代码结构
- 移除不必要的 SizedBox 组件,使用 spacing 属性替代
- 更新胶囊型滑块的默认半径值从 10.0 到 9.0
- 为滑块形状类添加 buildContext 参数以支持主题颜色获取
- 调整滑块轨道和游标绘制逻辑,增强视觉效果
- 优化文本样式在启用/禁用状态下的切换显示
- 改进部分组件的间距和布局设置
@runoob-coder runoob-coder changed the title TDTheme : 组件深色模式适配,优化调整组件样式 TDTheme : 组件全面适配深色模式,优化调整组件样式 Oct 5, 2025
- 将 'Message 全局提示' 更新为 'Message 消息通知'
- 将 'NoticeBar 消息提醒' 更新为 'NoticeBar 公告栏'
- 删除了滑块组件中硬编码的次要激活颜色值
- 确保滑块样式由主题数据统一控制
- 避免颜色配置与组件逻辑耦合
- 设置包命名空间以兼容 AGP8.0+
- 更新 compileSdkVersion为 flutter.compileSdkVersion
- 配置 Java 11 兼容性选项
- 更新 minSdkVersion 为 flutter.minSdkVersion
- 升级 Gradle 版本至 8.7
- 升级 AGP 版本至 8.6.0
- 升级 Kotlin 版本至 2.1.0
- 降级 web 依赖版本至 0.3.0
- 将 targetSdkVersion 从固定值 31 改为使用 flutter.targetSdkVersion 动态配置
- 使 SDK 版本配置与 Flutter 项目标准保持一致
- 提高项目构建配置的可维护性
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.

3 participants