码迷,mamicode.com
首页 >  
搜索关键字:swizzling    ( 65个结果
ios method swizzling
阅读器iOS开发iOS本文由TracyYih[博客]翻译自NSHipster的文章Method Swizzling。在上周associated objects一文中,我们开始探索Objective-C运行时的一些黑魔法。本周我们继续前行,来讨论可能是最受争议的运行时技术:method swizzli...
分类:移动开发   时间:2015-11-09 01:31:51    阅读次数:249
Objective-C对象模型及应用
引言简介与Runtime交互Runtime术语消息动态方法解析消息转发健壮的实例变量(Non Fragile ivars)Objective-C Associated ObjectsMethod Swizzling总结引言曾经觉得Objc特别方便上手,面对着 Cocoa 中大量 API,只知道简单的...
分类:其他好文   时间:2015-11-08 20:49:03    阅读次数:362
iOS-KVC/KVC的理解
1.KVC:Key-Value Coding,直译是:键值编码。简单来讲,就是给属性设置值的;复杂来讲,根据网上的说法,KVC运用了一个isa-swizzling技术。isa-swizzling就是类型混合指针机制。KVC主要通过isa-swizzling,来实现其内部查找定位的。isa指针,如其名...
分类:移动开发   时间:2015-09-19 22:39:12    阅读次数:284
Method Swizzling 和 AOP 实践(转)
上一篇介绍了Objective-C Messaging。利用 Objective-C 的 Runtime 特性,我们可以给语言做扩展,帮助解决项目开发中的一些设计和技术问题。这一篇,我们来探索一些利用 Objective-C Runtime 的黑色技巧。这些技巧中最具争议的或许就是 Method S...
分类:其他好文   时间:2015-09-17 17:22:33    阅读次数:184
iOS中AOP与Method Swizzling 项目中的应用
引子:项目中需要对按钮点击事件进行统计分析,现在项目中就是在按钮的响应代码中添加点击事件,非常繁琐。所以使用了AOP(面向切面编程),将统计的业务逻辑统一抽离出来。项目中添加的开源库:https://github.com/steipete/AspectsMethod Swizzling 利用runt...
分类:移动开发   时间:2015-09-16 14:04:13    阅读次数:224
KVC实现原理简介
KVC,全称:Key-Value-Coding。 KVC运用了isa-swizzling技术。isa-swizzling就是类型混合指针机制。KVC主要通过isa-swizzling来实现其内部定位查找。isa指针(is a kind of),指向维护分发表的对象的类。该分发表实际上包含了指向...
分类:其他好文   时间:2015-09-11 10:23:08    阅读次数:211
ObjC Runtime 黑魔法 — Method Swizzling
适用情境 ? ? 项目中大量控制器需要在载入时进行日志统计或进行类似的处理。如果直接往所有控制器中进行代码编写,会产生大量的重复的代码,降低了代码后期的可读性,不利于维护。由于所有部分的逻辑代码相同,...
分类:其他好文   时间:2015-09-10 16:06:50    阅读次数:186
(方法调配)Method Swizzling
一、概念 方法调配:因为Objective-C是运行时语言,也就是说究竟会调用何种方法要在运行期才能解析出来。那么我们其实也可以在运行时改变选择子名称。这样我们既不需要查看到源代码,又没有必要去重写子类来覆写方法就能改变类本身的功能。这样一来新功能就会在类的所有实例中表现出来,而不仅限于那些重写子....
分类:其他好文   时间:2015-09-08 12:02:28    阅读次数:172
消息转发原理
Objective-C 中的 Method Swizzling 是一项异常强大的技术,它可以允许我们动态地替换方法的实现,实现 Hook 功能,是一种比子类化更加灵活的“重写”方法的方式。Method Swizzling 的原理Method Swizzling 是一把双刃剑,使用得当可以让我们非常轻...
分类:其他好文   时间:2015-08-08 18:11:07    阅读次数:167
RunTime--Method Swizzling
method swizzling 修改方法函数的调用项目中用到的场景:打开页面显示的次数;用到的函数:@selector(方法名)class_getInstanceMethod(, )//返回类名下sel方法class_addMethod(, , , )//给cls添加一个新的方法,若干cls存在这...
分类:其他好文   时间:2015-07-27 18:16:49    阅读次数:107
65条   上一页 1 2 3 4 5 6 7 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!