范围:按角色划分的文档分区与按需求划分的入口索引。
FluentUI 是一个基于 Fabric 的 Minecraft UI 框架(MC 26.2 / Java 25),提供自界定泛型链式 API、惰性布局、H0/H1/L1/H3/L3/H5 分层碰撞检测、多根覆盖层森林等能力。
文档分类
| 分区 | 面向读者 | 内容 |
|---|---|---|
| 开发者指南 | 使用 FluentUI 构建界面的开发者 | 快速开始、核心概念、布局、组件、动画、覆盖层、交互、常见模式、常见问题 |
| 架构与内部原理 | 贡献者 / 需要深入框架内部的开发者 | 元素系统、布局系统、交互引擎、覆盖层系统、设计决策、实现模式 |
需求导航
快速上手
组件 API
→ UI 组件,包含 15 个内置组件的完整 API、颜色与自定义组件
常见界面实现
→ 常见使用模式,涵盖设置页面、表单验证、模态对话框、动态列表、可拖拽面板
框架内部原理
FAQ
框架扩展
全部文档目录
开发者指南
| 文档 | 内容 |
|---|---|
| 快速开始 | 依赖添加、最小屏幕示例 |
| 核心概念 | 链式 API、元素层次、字体、可见性 |
| 布局容器 | StackPanel、Canvas、EntryRow |
| UI 组件 | 15 个组件的 API 和颜色、自定义组件 |
| 动画 | Animator、缓动函数 |
| 覆盖层与浮动元素 | 浮层、模态与被动 |
| 交互与事件 | 输入转发、悬停、焦点 |
| 颜色与工具 | Colors、UIRenderUtil |
| 常见使用模式 | 设置页面、表单验证、动态列表、可拖拽面板 |
| 架构原理 | Element 生命周期、惰性布局、碰撞检测、渲染管线 |
| 常见问题 | 使用中的常见问题、调试技巧 |
架构与内部原理
| 文档 | 内容 |
|---|---|
| 项目概述 | 项目定位、核心特性、源码结构 |
| 元素系统 | Element 基类、自界定泛型、pressFlags |
| 布局系统 | 惰性布局、坐标系统、OverflowMode |
| 交互引擎 | InteractionManager、H0/H1/L1/H3/L3/H5 碰撞检测 |
| 覆盖层系统 | OverlayTree 多根森林、模态语义 |
| 生命周期系统 | UiTickDriver 固定步长、TickWalker 统一遍历 |
| 测试源集 | testmod 自建源集接线、DevGallery 手工核对页 |
| 根树与层级系统 | 所有权模型、渲染/输入流水线 |
| 动画系统 | Animator、缓动函数 |
| 工具类 | Colors、UIRenderUtil、TextDrawUtil |
| 自绘扩展 | VertexPainter、CustomElementRenderState、CustomDrawUtil、渐变 |
| 关键设计决策 | 7 项核心设计决策及其理由 |
| 如何使用 | 快速上手、组件示例、布局示例 |
| 常见实现模式 | 添加组件、自定义布局、扩展碰撞检测 |
| 常见问题 | 内部实现原理、设计选择 |