-
Notifications
You must be signed in to change notification settings - Fork 59
各模块职能
Luke edited this page Feb 24, 2020
·
2 revisions
一般使用直接依赖litho模块即可。
提供核心模板解析能力。
能够将模板解析并绑定数据到展示层的树形结构,与渲染层(litho模块)完全解耦,方便后期更换视图引擎。
目前默认也是唯一的视图引擎。
基于Facebook的litho实现,具有以下优势:
在实现样式的基础上,尽最大的可能不去使用非硬件加速的绘图API,防止渲染效率出现断崖式下跌。
默认布局编译器,一个命令行程序。
目前的做法是将布局编译成json格式,方便客户端直接利用现有设施进行解析。所以不管你是gson或者fastjson直接无脑解析成TemplateNode就对了,不需要再为模板解析接其他奇奇怪怪的东西。
目前只有两个参数:
- -i 输入待编译布局
- -o 输出位置
使用Spring boot搭建的一个小型调试服务器。
调试服务器开启时可向Playground APP提供实时预览功能。该模块不建议单独使用,需要配合intellij插件,由插件调用。
intellij平台的兼容插件,兼容AS、IDEA等。
目前支持dsl标签和属性的智能补全,在代码行中直接调起调试器和编译器对布局进行调试和编译。
调试器与插件无缝结合,当你编辑其他的包时,调试器也会跟随你返回新的布局文件到Playground APP实时预览的界面上。。
注意,jetbrains现在还没有开放在AS上开放intellij插件的能力,二次开发需要用idea打开此模块。
一个sample APP。
APP内包含几个典型的布局源码以及UI效果的展示(需要联网,否则没图)。
还有介绍各种目前能够使用的各种组件。
可以使用playground对布局进行实时预览。