QSwizzle 0.2.4

QSwizzle 0.2.4

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布最新发布2015年8月

Rob Rodriguez 维护。



QSwizzle 0.2.4

  • iSofTom

STSwizzle

STSwizzle 向 NSObject 添加了几个方法。一些方法允许对一个类的函数进行交换,其他方法允许对一个特定实例的函数进行交换。

如果您想知道,交换是交换当调用一个方法时将执行的指令的方法。

类上交换

+ (void)swizzleClassMethod:(SEL)firstSelector withMethod:(SEL)secondSelector;

此方法允许您交换两个类方法。例如,您可以将 +(void)foo1+(void)foo2 进行交换,以便当调用 foo1 方法时执行 foo2 函数,反之亦然。

+ (void)swizzleInstanceMethod:(SEL)firstSelector withMethod:(SEL)secondSelector;

此方法允许交换两个实例方法。这些方法将用于类的所有实例。

实例上交换

- (void)addMethodForSelector:(SEL)selector types:(char*)types implementation:(implementation_block)impl;

此方法允许向实例添加一个新方法。当传递给参数的 selector 在该实例上被调用时,执行参数中的实现代码块。

- (void)replaceMethodForSelector:(SEL)selector implementation:(implementation_block)impl;

此方法允许替换实例上的方法。当传递给参数的 selector 在该实例上被调用时,将执行参数中的实现代码块。

安装

要将其组件包含在项目中,我建议您使用 Cocoapods

  • pod "STSwizzle" 添加到您的 Podfile。

工作原理?

关于交换的文章将很快发布.