240 发简信
  • 120
    Block、__block修饰符的实质

    1. 将Block转换为普通C语言通过支持Block的编译器,可以将含有Block语法的源代码转换为一般C语言编译器能给处理的源代码,并作为极为...

  • 120
    离屏渲染

    图像显示原理 图像显示的大概流程: 程序运行从内存中读取数据对图片进行解压得到像素数据,若GPU不支持图片的颜色格式,CPU需要进行格式转换Co...

  • UITableViewCell的创建方式

    最常用的方式iOS6之前,cell的复用使用方法 所以常用如下方式创建cell,纯代码示例: 使用Xib的复用方式示例: iOS6之后的方法iO...

  • MVC、MVP和MVVM

    MVC 模型(Model)- 视图(View)- 控制器(Controller)目的:将Model与View的实现代码分离 Apple的MVC中...

  • 120
    类NSObject与runtime系统基础知识总结

    与runtime交互的三种方式 runtime system:基本上是用C和汇编写的一个runtime库,这个库使得C语言获得面向对象的能力,负...

  • 120
    YYCache源码阅读总结

    为什么要有缓存?   使用缓存的2个主要原因: 降低延迟:缓存离客户端更近,因此,从缓存请求内容比从源服务器所用时间更少,呈现速度更快。 降低网...

  • 120
    KVO学习

    KVO机制学习 什么是KVO?   KVO是Key-Value-Observing的缩写,通过KVO机制对象可以得到其他对象的某个属性的变更通知...

  • UITableViewCell复用与高度计算

    UITableViewCell的重用机制   为了减少内存开销,UITableView只会创建一屏幕(或一屏幕多一点)的UITableViewC...

  • AutoLayout学习

    iOS布局方式的演变 使用Rect的frame布局方式 autoresizingMask方式 AutoLayout SizeClass Auto...