授权协议: Apache-2.0
开发语言: Objective-C
操作系统: 跨平台
收录时间: 2019-09-16
提 交 者: 美团技术团队

Graver 是一款高效的 UI 渲染框架,它以更低的资源消耗来构建十分流畅的 UI 界面。Graver 独创性的采用了基于绘制的视觉元素分解方式来构建界面,得益于此,该框架能让 UI 渲染过程变得更加简单、灵活。

功能特点

  • 性能表现优异

Graver 在 FPS、CPU、Memory 各方面的指标均表现优异。

  • “一站式”异步化

Graver 从文本计算、样式排版渲染、图片解码,再到绘制,实现了全程异步化,并且是线程安全的。使用 Graver 可以一站式获得全部性能优化点。

  • 性能消耗的“边际成本”几乎为零

Graver 渲染整个过程除画板视图外完全没有使用 UIKit 控件,最终产出的结果是一张位图(Bitmap),视图层级、数量大幅降低。

  • 渲染速度快

Graver 并发进行多个画板视图的渲染、显示工作。得益于图文混排技术的应用,达到了内存占用低,渲染速度快的效果。由于排版数据是不变的,所以内部会进行缓存、复用,这又进一步促进了整体渲染效率。Graver 既做到了高效渲染,又保证了低时延页面加载。

  • 以“少”胜“繁”

Graver 重新抽象封装 CoreText、CoreGraphic 等系统基础能力,通过少量系统标准图形绘制接口即可实现复杂界面的展示。

  • 基于位图(bitmap)的轻量事件交互系统

如上述所说,界面展示从传统的视图树转变为一张位图,而位图不能响应、区分内部具体位置的点击事件。Graver 提供了基于位图的轻量事件交互系统,可以准确识别点击位置发生在位图的哪一块“绘制单元”内。该“绘制单元”可以理解为与我们一贯使用的某个具体UI控件相对应的视觉展示。使用 Graver 为某一视觉展示添加事件如同使用系统 UIButton 添加事件一样简单。

  • 全新的视觉元素分解思路

Graver 一改界面编程思路,与传统的通过控件“拼接”、“添加”,视图排列组合方式构建界面不同,它提供了十分灵活、便捷的接口让我们以“视觉所见”的方式构建界面。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

Graver 的相关资讯

还没有任何资讯

Graver 的相关博客

美团 iOS 端开源框架 Graver 在动态化上的探索与实践

近些年,移动端动态化技术可谓是“百花齐放”,其中的渲染性能也是动态化技术一直在探索、研究的课题。美团的开源框架 Graver...

美团点评技术与算法文章汇总,设计算法、前后端、客户端、小程序等

这是一份福利贴,先看内容,再看获取方式。 算法文章汇总目录: 美团“猜你喜欢”深度学习排序模型实践 美团大脑:知识图片的...

iOS开发简历制作-全方位分析

前言 (在此先声明,此系列文章,仅仅个人观点,仅供参考,不喜勿喷!) 转载请备明:原文地址 目录 一:iOS开发者定位分析 二...

Graver 的相关问答

还没有任何问答,马上提问

评论 (0)

加载中
更多评论
0 评论
7 收藏
分享
返回顶部
顶部