首页
/ Forui 0.12.0 版本发布:全新侧边栏组件与交互增强

Forui 0.12.0 版本发布:全新侧边栏组件与交互增强

2025-07-06 01:20:56作者:尤峻淳Whitney

Forui 是一个基于 Flutter 的 UI 组件库,致力于为开发者提供高质量、可定制化的界面元素。最新发布的 0.12.0 版本带来了多项重要更新,包括全新的侧边栏导航组件、增强的交互体验以及多项功能改进。

核心更新内容

1. 全新侧边栏导航系统

0.12.0 版本引入了完整的侧边栏导航解决方案,包含三个核心组件:

  • FSidebar:基础侧边栏容器,通常用于应用的主导航区域
  • FSidebarGroup:可折叠的分组容器,用于组织相关导航项
  • FSidebarItem:单个导航项,支持各种交互状态

这些组件可以与新增的 FScaffold.sidebar 属性无缝集成,开发者现在可以轻松构建具有专业级导航体验的应用界面。

2. 交互体验全面升级

日期时间选择器优化

FDateFieldFTimeField 组件获得了焦点管理的改进:

  • 日历弹窗现在会自动处理焦点转移
  • 按下回车键时会自动关闭日期选择弹窗
  • 时间选择器的交互流程更加流畅

选择器组件增强

FSelect 组件进行了多项改进:

  • 新增 searchFromMap 方法,简化从映射数据创建搜索选择器的过程
  • 引入 FSelectItem.rawFSelectSection.fromMap 等便捷构造方法
  • 改进了焦点管理,使键盘导航更加可靠

3. 全新 Toast 通知系统

0.12.0 版本引入了一套完整的 Toast 通知解决方案:

  • FToast:基础 Toast 组件,支持多种样式
  • FToaster:Toast 管理器,控制全局 Toast 显示行为
  • showFToastshowRawFToast 方法,简化 Toast 显示流程

这套系统支持丰富的配置选项,包括展开行为、样式定制等,可以满足各种通知场景的需求。

4. 可折叠内容组件

新增的 FCollapsible 组件提供了内容折叠/展开的功能,可用于构建可折叠的面板、手风琴菜单等交互元素。

重要变更说明

破坏性变更

  1. 选择器组件格式要求

    • FSelect 构造器和 FSelect.search 方法的 format 参数现在变为必填
    • 移除了 FSelect.defaultFormat
    • FSelectItem 现在要求直接传入文本字符串而非 Widget
  2. 主题结构调整

    • FThemeData.headerStyle 重命名为 FThemeData.headerStyles
  3. 日历组件默认行为

    • FLineCalendar 现在默认不可切换日期(可通过 toggleable 参数启用)

其他改进

  • 文本输入组件新增 onTapOutside 回调
  • 标签页组件新增 onPress 回调
  • 弹窗组件新增快捷键支持
  • 样式别名生成逻辑优化

升级建议

对于现有项目,升级到 0.12.0 版本时需要注意以下几点:

  1. 检查所有使用 FSelect 的地方,确保提供了 format 参数
  2. 更新 FSelectItem 的使用方式,改为直接传入文本
  3. 如有使用 FThemeData.headerStyle,需更新为 headerStyles
  4. 评估 FLineCalendar 的使用场景,如需切换功能需显式设置 toggleable: true

总结

Forui 0.12.0 通过引入侧边栏导航系统和 Toast 通知等新组件,大幅扩展了其应用场景。同时,对现有组件的交互体验改进使得整体用户体验更加流畅。这些更新使得 Forui 更加适合构建复杂的企业级应用,为开发者提供了更多高效构建专业界面的工具。

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

热门内容推荐

最新内容推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
178
262
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
866
513
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
183
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
261
302
kernelkernel
deepin linux kernel
C
22
5
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
598
57
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
398
371
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
332
1.08 K