HookBlock
示例
要运行示例项目,请首先克隆仓库,然后从 Example 目录运行 pod install
要求
说明
照搬 https://github.com/ebf/CTObjectiveCRuntimeAdditions ,方便使用,弄了个 pods.
安装
通过 CocoaPods 获取 HookBlock。要安装它,只需将以下行添加到您的 Podfile 中
pod 'HookBlock'
使用
#import <CTBlockDescription.h>
// a test block.
BOOL(^testBlock)(BOOL animated, id object,NSURLRequest *str,int i) = ^BOOL(BOOL animated, id object,NSURLRequest *req,int i) {
return YES;
};
// allocating a block description
CTBlockDescription *blockDescription = [[CTBlockDescription alloc] initWithBlock:testBlock];
NSMethodSignature *methodSignature = blockDescription.blockSignature;
for (int i = 0; i < methodSignature.numberOfArguments; i ++) {
const char *argu = [methodSignature getArgumentTypeAtIndex:i];
NSLog(@"第%d个参数是:%s",i,argu);
}
2019-02-14 15:19:56.654417+0800 HookBlock_Example[42387:1059962] 第0个参数是:@?
2019-02-14 15:19:56.654667+0800 HookBlock_Example[42387:1059962] 第1个参数是:B
2019-02-14 15:19:56.654805+0800 HookBlock_Example[42387:1059962] 第2个参数是:@
2019-02-14 15:19:56.654930+0800 HookBlock_Example[42387:1059962] 第3个参数是:@"NSURLRequest"
2019-02-14 15:19:56.655052+0800 HookBlock_Example[42387:1059962] 第4个参数是:i
作者
chuqingr, [email protected]
许可
HookBlock 允许在 MIT 许可证下使用。更多详情见 LICENSE 文件。