RunTime
RITL
只有无形的事物,方能在时光中永不褪色..
展开
-
iOS开发------runtime之动态添加方法(动态决议,请求转发)
RunTime中实例变量调用方法的步骤: 1、在该实例变量的方法缓存列表中查找方法,如果找到执行. 2、如果没找到,会去类结构中的相应方法列表中进行查找,如果找到执行. 3、如果方法列表没有找到该方法,那么就从父类中进行1、2部操作. 4、如果直到根类仍然没有找到方法,那么就会报错:unrecognized selector sent to instance 0x1005046c0.原创 2016-02-28 16:13:14 · 3677 阅读 · 0 评论 -
iOS开发-------初探运行时runtime
对于iOS的开发者,相信Objc的RunTime机制肯定都听说过,了解RunTime的机制,对自己的提高不言而喻,最近在一直学习RunTime机制,对此写下点学习过程的收获,以便以后查阅,也方便理解,本人研究RunTime时间不长,如果有理解不对的地方也请告知,共同进步。 什么叫RunTime呢,大家也都知道Objc的底层是C语言完成的,在运行的时候,会将Objc的代码转换成C原创 2016-02-22 08:47:16 · 992 阅读 · 0 评论 -
iOS开发------runtime关联对象(动态添加属性)
如果想用一个系统的类,但是该类又不满足需求,首先肯定是继承自系统的类,重新构建一个类,但这种方法,如果我们需求的类之比原来的类多一个属性呢,继承似乎又显得比较麻烦,这个时候也许用runtime的关联对象就可以办到了。要想在runtime中完成动态添加属性,需要导入#import<objc/runtime.h>这个头文件。然后需要了解下面两个方法:/** * 设置关联对象 * * @para原创 2016-03-01 10:43:07 · 3040 阅读 · 0 评论