21 | 除了 Cocoa,iOS还可以用哪些 GUI 框架开发?
该思维导图由 AI 生成,仅供参考
目前流行的 GUI 框架
- 深入了解
- 翻译
- 解释
- 总结
iOS开发中,除了使用Cocoa Touch框架外,还可以利用其他GUI框架进行界面优化。目前流行的GUI框架包括WebKit、Flutter和Texture。其中,Texture框架在性能上表现出色,尤其在用户交互体验方面有显著提升。相比于Cocoa Touch框架,Texture的学习成本较低,且性能先进,因此对于iOS开发者来说,转向Texture框架是一个值得考虑的选择。 文章详细介绍了GUI框架的基本单元、渲染流程以及各框架的特点和优势。其中,Texture最大的优势在于开发了线程安全的ASDisplayNode,能够很好地和UIView共生,实现不在主线程执行视图的布局绘制和层级计算,充分发挥多核CPU的优势。ASDisplayNode替代了UIView和CALayer的delegate,解耦了二者,并将它们包装成ASDisplayView和ASDisplayLayer供外部使用。此外,ASDisplayNode还实现了异步绘制,通过ASAsyncTransaction进行调度,进一步提升了性能。 总的来说,选择GUI框架时,渲染方面的区别并不大,而且渲染技术相对比较成熟。因此,在框架的易用性和与现有工程的兼容性上需要更多考虑。如果想提高App的使用体验,让界面操作更流畅,推荐使用Texture。Texture易用性和兼容性良好,学习成本与收益比也是最高的,代码质量也很高,值得学习。 整体而言,本文通过介绍GUI框架的特点和优势,为读者提供了全面的了解和选择参考。
《iOS 开发高手课》,新⼈⾸单¥59
全部留言(17)
- 最新
- 精选
- 贰零壹玖texture只是一层封装吧,渲染还是原生没变
作者回复: 没错
2019-04-274 - dreamCloud报告老师, 作业做好了: https://github.com/yunyyyun/FastTableTest 但是有写问题, 写在README.md里面了, 慢慢解决中, 同时欢迎同班同学们帮忙看看
作者回复: 没有用 Texture 呢
2019-05-242 - 哈FlexBox布局是H5的布局方式吧…可惜的是Xcode对这种布局方式没有自动补全…
作者回复: FlexBox 可以使用第三方库 Yoga
2019-04-282 - 艾斯伊文คิดถึงwebkit,rn,flutter启动速度比原生快么?还是需要在一定条件下?
作者回复: 没有
2019-04-2722 - dreamCloudreply to 作者:ViewController1 里面有用 ASTableNode 和 ASCellNode 做 list
作者回复: 看到了👍🏻
2019-05-261 - 赶紧学起来Texture原理挺好,不好推广使用啊 1、如果用Texture,跟RAC结合使用,有些方法不支持啊,比如ASButtonNode不支持rac_signalForControlEvents: 2、如果用Texture,ASButtonNode也不支持Masonry方法调用
作者回复: RAC 的支持可以自己添加的。使用了 Texture 就不要用 Masonry 了吧,都是用来布局的。
2019-05-221 - 亡命之徒想请教下老师,第三步为什么要向上寻找属性
作者回复: 不是找属性,是找 Layer,将 block 加入对应 Layer 的队列里执行
2019-06-25 - Geek_45fc02好奇Apple为什么不借鉴一下Texture的思想,既不会大动目前的UI框架,也能极大提升UI的渲染性能。2019-05-2123
- jcy尝试回答一下 ASAsyncTransaction 是如何调度 displayBlock 的: 首先找到当前 ASDisplayNode 的 layer 对象的顶层 layer,并获取其 asyncdisplaykit_asyncTransaction 属性,然后把 displayBlock 放入内部一个指定优先级的 list 的尾部,然后内部会按照优先级高低依次调度(每个优先级有一个 list,同一优先级的从 list 头开始调度)2023-03-19归属地:北京1
- Geek_ae7466为什么说Webkit不适用于安卓系统呢?2019-09-301