YYText 中的 CoreText

富文本框架里YYText在性能方面的表现很出色,它基于 CoreText 做了大量基础处理并实现了两个上层视图组件:YYLabel 和 YYTextView。在了解富文本处理之前,我们还需要对 CoreText 基础知识做一些了解。本篇主要梳理 YYText 中 CoreText 的底层基础部分处理。

AutoreleasePool 实现原理

AutoreleasePool(自动释放池)是 OC 中一种内存自动回收的机制。在 MRC 中,可以通过 [obj autorelease] 来延迟内存的释放;而 ARC 中的 autorelease 方法是被禁用的,无法主动调用,但对象的内存任在我们不知情的情况下被很好的管理。这就是依赖于背后的 Autorelease 机制,那么是如何管理的呢?

YYCache 源码梳理

本篇是对 YYCache 源码阅读过程中的梳理。YYCache 是一个线程安全的高性能 Key-Value 缓存框架。代码质量很高,值得拿来学习。

YYImage 源码梳理

图片相关的处理,在移动应用中属于比较重要的一个角色。本篇主要是对 YYImage 的源码实现做一个梳理,内容结构:

  • UIImage 相关的处理
  • YYImage 框架结构
  • YYImage
  • YYFrameImage
  • YYSpriteSheetImage
  • YYAnimatedImage
  • YYAnimatedImageView
  • YYImageCoder