STSwizzle 0.1.0

STSwizzle 0.1.0

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布最新发布2014年12月

iSofTom 维护。



STSwizzle 0.1.0

  • 作者:
  • iSofTom

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此组件将很快通过 Cocoapods 提供

它是如何工作的?

关于交换的文章将很快提供。.