跳到内容
CrossFly 是 100% 开源在 GitHub 关注我们
CrossFlyCrossFly
开始使用

本页面由葡萄牙语机器翻译,可能存在错误。葡萄牙语版本为准。

1. CrossFly 全景

你将学到: 让本课程后续所有选择都变得合理的心智模型。前置条件: 已运行过 Hello World。

在整个课程中我们构建同一个应用 —— 一个带持久化的待办列表 —— 它随着每一页而成长,从一个静态界面演变为经过测试、响应式、可打包发布的应用。

支撑一切的理念

  • Java + OpenGL。 CrossFly 是一个通过 GPU(OpenGL/WebGL)绘制的 Java 应用。外观在所有平台上完全一致 —— 没有原生控件。
  • 单一绘制线程。 所有 UI 和渲染都在同一个线程里进行。繁重工作交给后台线程,再通过 Component.onUI(...) 返回。
  • 按需渲染。 只有当你调用 repaint() 时界面才重绘 —— 节省电量。
  • 一切皆 Component。 不存在“控件 vs 容器”的层级:任何 Component 在接收一个 Layout 后都会成为容器。
  • 不强加架构。 没有响应式绑定,也没有依赖注入 —— 你直接修改对象,并手动更新 UI。

各部件地图

部件 角色
Main 引导入口(libGDX 的 ApplicationListener)
Window 一个界面(导航栈中一个全屏的 Component)
Component UI 的基本单元 —— 一切都由它派生
Layout 测量并定位容器的子元素
Styles/Skin/ColorScheme 外观(形状 + 按主题的颜色)

回顾

CrossFly 是命令式且面向对象的:创建对象一次,保存引用,修改它,repaint()。线程处理是显式的;外观就是你的 GPU 在绘制,处处相同。

下一步

→ 窗口与导航

另见

这个页面有帮助吗?