Skip to content

Commit ec56271

Browse files
authored
demo: 新增深色模式配置文档,优化深色模式示例,设置应用启动时禁止横屏 (Tencent#768)
* feat(main): 设置应用启动时禁止横屏 - 添加 WidgetsFlutterBinding.ensureInitialized() 确保 Flutter 绑定初始化 - 使用 SystemChrome.setPreferredOrientations 限制设备方向为竖屏 * feat(theme): 支持暗黑主题配置和切换功能 - 新增暗黑主题配置项,在defaultThemeConfig中添加dark主题定义 - 修改OnThemeChange回调函数签名,支持传递暗黑主题数据 - 更新主题切换逻辑,支持亮色和暗色主题数据分别设置 - 调整主页主题按钮布局和间距样式 - 修改应用主题模式为系统跟随模式(ThemeMode.system) - 优化主题数据加载逻辑,支持从assets/theme.json加载亮色和暗色主题 * docs(readme):优化文档格式与表述 * docs(site): 优化更新文档 * refactor(theme):优化主题配置与示例代码结构 - 移除调试打印语句,提升代码整洁度 - 更新示例应用中的主题数据初始化逻辑 - 优化 AppBar 渐变背景的代码格式- 调整 BottomTabBar 配置代码的可读性- 统一图标和文本样式的代码风格 -修复部分 widget 嵌套结构以提高性能- 精简输入组件和按钮的配置参数 - 改进文本组件的字体加载方式- 优化整体示例页面的布局结构 - 增强主题切换功能的稳定性 - 完善多主题支持的初始化流程 - 提升代码可维护性和扩展性 - 规范组件使用示例的书写方式 - 优化资源加载和内存管理策略 - 改进错误处理和边界情况判断 - 增强组件间通信和状态管理机制 * feat(picker): 支持自定义时间单位映射 - 修改 timeUnitMap 方法以使用 widget.model.mapping作为键 - 更新默认 mapping 数组值为英文标识符 - 优化时间单位获取逻辑,增加空值处理 - 调整 weeksMap 数组定义格式,提升可读性 * refactor(util):优化屏幕适配逻辑 - 使用 PlatformDispatcher.instance.views.first 替代 window 获取屏幕信息 -保持设计稿750 宽度的适配比例不变 -修复可能因多窗口导致的屏幕信息不准确问题 - 提高代码健壮性和未来多窗口支持的兼容性 * style(util): 格式化Iterable扩展函数代码 - 移除多余的空行 -优化join2函数参数格式 - 调整循环变量赋值格式 - 移除文件末尾多余空行 * feat(form): 导出表单验证组件 - 在主库文件中添加 td_form_validation 的导出 - 移除重复的导出声明以避免冲突 - 确保表单验证功能可被外部模块正确引用 * refactor(example):重构示例页面结构和主题配置 - 优化 ExamplePageModel 构造函数参数格式,提升可读性- 调整 ExamplePageInheritedTheme 构造函数参数布局 - 简化 ScreenUtil 类中的屏幕判断方法 - 重构 home.dart 页面布局结构,将主体内容嵌套在 SafeArea 内- 移除_buildBody 方法,直接构建页面主体内容- 更新绿色和红色主题配置,扩展品牌色系定义 - 统一按钮间距样式,使用 EdgeInsets.symmetric 替代显式边距设置 * style(search):优化搜索框组件,移除 cursorWidth 属性设置 * feat(example): 添加主题切换功能并优化导航栏 - 引入 provider 和 shared_preferences 包管理主题状态 - 创建 ThemeModeProvider 管理主题模式的持久化与切换 - 在导航栏添加主题切换按钮(仅移动端显示) - 使用 MultiProvider 包装 MaterialApp 实现全局主题控制 - 修复代码格式问题,增强结构可读性 * feat(theme): 添加深色模式切换功能 - 新增深色模式主题配置支持 - 实现主题模式切换界面 - 支持跟随系统主题自动切换 - 提供手动选择浅色/深色模式选项 - 集成TDesign主题数据加载与应用 - 使用Provider管理主题状态变化 * feat(theme): 添加深色模式切换功能 - 在浅色和深色主题中添加 TD 自定义主题配置 - 更新主题模式初始化逻辑注释 - 移除通知监听者语言已改变的冗余注释 - 优化主题模式切换时的通知机制 * docs(explain): 添加深色模式使用文档 - 新增深色模式配置与切换的详细说明 - 提供主题配置和应用的示例代码 - 介绍如何通过状态管理实现主题持久化 - 添加手动切换深色/浅色模式的实现方式 - 集成到网站导航中的全局配置部分 - 包含完整的代码片段和使用示例 * docs(dark-mode): 添加版本提示信息 - 在文档顶部插入版本提示框 - 提示用户该特性于0.2.6 版本上线 - 使用 SVG 图标增强视觉效果 - 设置背景色和圆角样式提升可读性 * docs(dark_test): 更新注释为文档注释风格 - 将单行注释 (//) 替换为文档注释 (///) - 统一代码注释风格以提高可读性 - 添加更多注释说明以增强代码理解 - 优化注释排版与格式一致性 - 补充对主题配置和颜色覆盖逻辑的解释 - 明确系统主题获取方式的相关注释 * docs(dark-mode): 添加深色主题配置示例 - 新增深色主题配置代码块 - 补充 brandColor 系列颜色定义 - 添加 warning、error、success 等状态色配置 - 完善背景色和文字颜色映射关系 - 提供完整的 darkTheme JSON 配置结构- 增加颜色引用说明注释 - 优化文档结构便于理解主题配置方式 * chore(deps): 更新flutter插件安卓生命周期依赖版本 - 将flutter_plugin_android_lifecycle从2.0.28更新至2.0.32- 保持web依赖版本不变- 更新依赖配置以确保兼容性 * fix(popup): 调整弹窗面板高度计算逻辑并优化拖拽功能 - 修改默认高度从 340 到 348 -仅在 draggable为 true 时添加动画监听器- 优化高度更新与动画同步逻辑 - 统一条件判断中的空格风格- 格式化代码以符合规范 - 提取部分表达式避免重复计算 - 修复部分组件命名和继承关系的排版问题
1 parent ca19c7c commit ec56271

27 files changed

+2236
-867
lines changed

CONTRIBUTING.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@ tdesign-site/ // tdesign flutter 站点
1414

1515
## 开发规范
1616

17-
- 组件命名规范:以 TD 为前缀,组件名称、API名称参考TDesign现有组件和API命名,可以根据 flutter 原生 Widget 的特点进行修改。组件 API 以满足设计要求和使用为准,可根据 flutter 特点做精简或定制。
17+
- 组件命名规范:以 `TD` 为前缀,组件名称、API名称参考 TDesign 现有组件和API命名,可以根据 flutter 原生 Widget 的特点进行修改。组件 API 以满足设计要求和使用为准,可根据 flutter 特点做精简或定制。
1818
- 组件库用到的所有色值、圆角、字体字号等样式属性需全部定义在主题中。
1919
- 代码规范遵循腾讯 Dart 代码规范。
20-
- 对于系统原有组件,如 Text, Image 等,应兼容系统原组件功能,只能扩展,不能阉割,以免业务需要使用系统功能时,必须放弃 TDesign 控件。
20+
- 对于系统原有组件,如 `Text``Image` 等,应兼容系统原组件功能,只能扩展,不能阉割,以免业务需要使用系统功能时,必须放弃 TDesign 控件。
2121
- 示例页面尽量使用 ExamplePage + ExampleModule + ExampleItem 组合,按照示例稿的布局实现;页面写完后,在 main.dart 中修改 exampleMap 对应组件的 isTodo 属性即可。
2222
- 组件 API 和演示代码,请参考 [demo_tool/README.md](./tdesign-component/demo_tool/README.md) 文件。
23-
- 组件内部的固定文案,都应该抽离到 TDResourceDelegate 中统一管理,方便业务进行国际化适配。
23+
- 组件内部的固定文案都应该抽离到 TDResourceDelegate 中统一管理方便业务进行国际化适配。
2424
- 如果使用的组件 TD 有封装,尽量使用 TD 已有组件,而非直接使用系统组件。
2525

2626
## 贡献指南
2727

28-
请参考:[贡献指南](https://tdesign.tencent.com/flutter/develop)
28+
请参考[贡献指南](https://tdesign.tencent.com/flutter/develop)

PUBLISH.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
## 发布流程
44

5-
-`develop` 新建 `release/x.y.z` 分支,并修改 `tdesign-component/pubspec.yaml` 中的`version`版本号,推送分支至远程仓库,并提交一个合入`develop`的 Pull Request 到仓库
6-
- 仓库的 Github Action 会自动整理上个版本至今 commit 对应的 CHANGELOG,并将 CHANGELOG 的 draft 作为一个评论推送到该 Pull Request 上
7-
- 发布人检查 CHANGELOG,并优化内容逻辑结构,确认无误后删除对于评论首行提示,Github Action 会将优化后的内容写入 CHANGELOG.md 内
8-
- 确认无误后,合并分支入`develop`
9-
- 合入 `develop` 后,仓库会触发 Github Action 合入`main`分支,并将版本号作为 `tag` 打在仓库上,并触发 Github Action 执行版本发布流程
10-
- 合入 `main` 分支后,站点的部署流水线 web hook 会监听到 `main` 分支的新增 commit,并触发流水线,官网更新站点
5+
1.`develop` 新建 `release/x.y.z` 分支,并修改 `tdesign-component/pubspec.yaml` 中的`version`版本号,推送分支至远程仓库,并提交一个合入`develop`的 Pull Request 到仓库
6+
2. 仓库的 Github Action 会自动整理上个版本至今 commit 对应的 CHANGELOG,并将 CHANGELOG 的 draft 作为一个评论推送到该 Pull Request 上
7+
3. 发布人检查 CHANGELOG,并优化内容逻辑结构,确认无误后删除对于评论首行提示,Github Action 会将优化后的内容写入 CHANGELOG.md 内
8+
4. 确认无误后,合并分支入`develop`
9+
5. 合入 `develop` 后,仓库会触发 Github Action 合入`main`分支,并将版本号作为 `tag` 打在仓库上,并触发 Github Action 执行版本发布流程
10+
6. 合入 `main` 分支后,站点的部署流水线 web hook 会监听到 `main` 分支的新增 commit,并触发流水线,官网更新站点

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ Tencent TDesign UI component library of Flutter, suitable for use in mobile proj
2525

2626
# 🎉 Features
2727

28-
- Provides Flutter UI component library in TDesign design style
29-
- Support customizing themes according to App design style
30-
- Provides commonly used Icon library and supports customized replacement
28+
- Provides Flutter UI component library in TDesign design style.
29+
- Support customizing themes according to App design style.
30+
- Provides commonly used Icon library and supports customized replacement.
3131
- Define color groups according to the TDesign specification, which can be viewed in TDColors to facilitate the adaptation of components to the TDesign specification.
3232
- The color value declaration class can add default colors and view the default display effect of color values in real time.
3333

README_zh_CN.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020

2121
腾讯TDesign Flutter技术栈组件库,适合在移动端项目中使用。
2222

23-
2423
# 🎉 特性
2524

2625
- 提供 TDesign 设计风格的 Flutter UI 组件库。
@@ -69,7 +68,6 @@ Icon(TDIcons.activity)
6968

7069
- 有关更多使用示例,请参阅 [example/lib/page](tdesign-component/example/lib/page)
7170

72-
7371
# 其他技术栈实现
7472

7573
- 桌面端 Vue 2.X 版本实现:[tdesign-vue](https://github.com/Tencent/tdesign-vue)
@@ -90,7 +88,7 @@ TDesign Flutter 依赖以下组件库,感谢作者的开源贡献:
9088

9189
# 贡献
9290

93-
欢迎贡献代码。在提交 [Pull Request](https://github.com/Tencent/tdesign-flutter/pulls) 之前,请先阅读[贡献指南]((CONTRIBUTING.md))。
91+
欢迎贡献代码。在提交 [Pull Request](https://github.com/Tencent/tdesign-flutter/pulls) 之前,请先阅读[贡献指南](CONTRIBUTING.md)。
9492

9593
<a href="https://github.com/Tencent/tdesign-flutter/graphs/contributors">
9694
<img src="https://contrib.rocks/image?repo=Tencent/tdesign-flutter" />

0 commit comments

Comments
 (0)