首页
/ FlexColorScheme 8.2.0 发布:支持 Flutter 3.29 及 Shadcn UI 色彩方案

FlexColorScheme 8.2.0 发布:支持 Flutter 3.29 及 Shadcn UI 色彩方案

2025-07-05 06:54:01作者:蔡怀权

FlexColorScheme 是一个强大的 Flutter 主题定制库,它简化了 Material Design 主题的创建过程,提供了丰富的预设色彩方案和高度可定制的主题配置选项。通过 FlexColorScheme,开发者可以轻松实现美观且一致的应用主题,同时支持浅色和深色模式。

版本 8.2.0 主要更新

对 Flutter 3.29.0 的全面支持

本次更新移除了所有在 Flutter 3.29.0 中已弃用的属性引用,包括:

  • MaterialStateUnderlineInputBorderMaterialStateOutlineInputBorder 替换为新的 WidgetStateInputBorder
  • 完全移除了对 Themedata.dialogBackgroundColor 的使用
  • 移除了即将在 Flutter 3.31.0 中弃用的 ThemeData.indicatorColor 属性,转而使用 TabBarThemeData.indicatorColor

这些变更确保了 FlexColorScheme 与最新 Flutter 版本的兼容性,同时遵循了 Flutter 团队推荐的实践方式。

TabBar 主题修复

针对 Flutter 3.27 和 3.31 版本中 TabBar 主题 API 的重大变更,FlexColorScheme 8.2.0 提供了完整的兼容性修复。这些变更包括:

  • 在 Flutter 3.27 中引入的组件主题规范化变更
  • 在 Flutter 3.31 beta 中新增的编译时破坏性变更

开发者现在可以放心地在所有 Flutter 渠道(稳定版、beta 版和 master 版)中使用 TabBar 主题功能,而无需担心兼容性问题。

新增 Shadcn UI 色彩方案(Beta 功能)

FlexColorScheme 8.2.0 引入了备受期待的 Shadcn UI 色彩方案支持。Shadcn 是一个流行的设计系统,以其简洁现代的风格著称。本次更新包含了:

  • 12 种 Shadcn 色彩方案,可通过以下枚举轻松使用:
    • FlexScheme.shadBlue
    • FlexScheme.shadGray
    • FlexScheme.shadGreen
    • FlexScheme.shadNeutral
    • FlexScheme.shadOrange
    • FlexScheme.shadRed
    • FlexScheme.shadRose
    • FlexScheme.shadSlate
    • FlexScheme.shadStone
    • FlexScheme.shadViolet
    • FlexScheme.shadYellow
    • FlexScheme.shadZinc

需要注意的是,当前版本中 Shadcn 色彩方案仍处于 Beta 阶段,表面颜色(background、surface 和 container)暂时使用 FlexColorScheme 的单色表面颜色。未来版本可能会增加对原生 Shadcn 表面颜色的支持,并提供切换选项。

Themes Playground 更新

代码生成改进

主题代码生成功能得到了显著增强:

  • 修复了第一个方案的代码生成问题
  • 改进了第二和第三个方案的代码生成,现在能准确反映它们在应用内部的定义方式
  • 优化了生成代码的结构,增加了注释以提高可读性
  • 移除了直接粘贴到 MaterialApp 属性的旧代码生成选项,专注于更灵活的文件配置方式

导航组件优化

针对 NavigationRail 组件:

  • 默认配置现在使用 NavigationRailLabelType.none,以解决 Flutter SDK 中关于折叠样式的限制
  • 添加了相关信息说明,帮助开发者理解这一设计决策
  • 提供了组件级别的解决方案,允许在不同状态下使用不同的标签类型

新增平台自适应组件展示

Themes Playground 现在展示了更多 Material-Cupertino 平台自适应组件,包括:

  • AlertDialog.adaptive
  • Slider.adaptive
  • Checkbox.adaptive
  • Radio.adaptive

这些示例帮助开发者更好地理解如何创建跨平台一致的用户界面。

Shadcn UI 预设配置(Beta)

新增了一个 Shadcn UI 风格的预设配置:

  • 这是一个初步的 Beta 版本配置
  • 将 Material 主题调整为类似 Shadcn UI 设计系统的风格
  • 主要设计用于 Shadcn 主题色彩,但也可与其他内置方案配合使用
  • 未来版本会持续改进这一配置,使其更接近 Shadcn 设计理念

开发者应注意,这一配置在未来的 Playground 版本中可能会发生变化,建议通过导出 JSON 设置来保存喜欢的配置。

总结

FlexColorScheme 8.2.0 带来了对最新 Flutter 版本的全面支持,修复了重要的主题兼容性问题,并引入了备受期待的 Shadcn UI 色彩方案。这些更新使开发者能够更轻松地创建美观、一致且符合现代设计趋势的应用程序界面。

对于想要尝试新功能的开发者,建议从 Shadcn 色彩方案开始探索,同时注意其 Beta 状态可能会带来未来的变化。通过 Themes Playground 的增强功能,开发者现在可以更直观地测试和导出各种主题配置,加速开发流程。

登录后查看全文
热门项目推荐

热门内容推荐

最新内容推荐

项目优选

收起
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
143
1.91 K
kernelkernel
deepin linux kernel
C
22
6
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
8
0
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
192
273
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
927
551
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
421
392
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
145
189
金融AI编程实战金融AI编程实战
为非计算机科班出身 (例如财经类高校金融学院) 同学量身定制,新手友好,让学生以亲身实践开源开发的方式,学会使用计算机自动化自己的科研/创新工作。案例以量化投资为主线,涉及 Bash、Python、SQL、BI、AI 等全技术栈,培养面向未来的数智化人才 (如数据工程师、数据分析师、数据科学家、数据决策者、量化投资人)。
Jupyter Notebook
75
64
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
344
1.3 K
easy-eseasy-es
Elasticsearch 国内Top1 elasticsearch搜索引擎框架es ORM框架,索引全自动智能托管,如丝般顺滑,与Mybatis-plus一致的API,屏蔽语言差异,开发者只需要会MySQL语法即可完成对Es的相关操作,零额外学习成本.底层采用RestHighLevelClient,兼具低码,易用,易拓展等特性,支持es独有的高亮,权重,分词,Geo,嵌套,父子类型等功能...
Java
36
8