1. 需要注意,UIView的-drawRect:方法没有默认的实现,而且如果UIView检测到-drawRect: 方法被调用了,它就会为视图分配一个寄宿图,这个寄宿图的像素尺寸等于视图大小乘以 contentsScale的值。所以如果不需要寄宿图,有没有其他的绘制需求,那么不要在UIView的子[……]

继续阅读

1. contents 用于显示图片,这个属性虽然类型是id,但只能接受CGImageRef和NSImage对象,其它对象就会得到一个空白图层,需要注意OC中传递参数需要用到toll-free bridging,将CGImageRef转换为OC对象

1
layer.contents = (__br[......]<p class="read-more"><a href="https://gjh.me/?p=271">继续阅读</a></p>

1. Cocoa中视图和Layer都是树形结构。视图可以处理事件,例如鼠标点击和手势触控,视图在层级中可以相互嵌套,一个视图可以管理它的所有子视图。Layer也可以树形嵌套,父Layer也可以管理子Layer的位置等属性,但Layer不处理用户的交互,所以Layer并不清楚具体的响应链(虽然Laye[……]

继续阅读

一切皆为对象。

其实有很多种方式你可以在面向过程和面向对象间互相转化,但本文的目的是:有时候抛弃C层面的东西也是很好的。

是的——对于这种Smalltalk一样杂交而成的语言中的非面向对象部分而言,C语言是很有魅力的一部分。它速度快、久经考验,是现代计算最核心的部分。而且当面向对象范式处[……]

继续阅读