SEARU.ORG
当前位置:SEARU.ORG > Linux 软件 > 正文

RuntimeSummary

RuntimeSummary 一个集合了常用 Objective-C Runtime 使用方法的 Playground。

如何使用这个Playground:

Screenshot

先选择 Scheme,然后 Run!

方法交换 / MethodSwizzling

+ (void)load {
    // 获取到两个方法
    Method imageNamedMethod = class_getClassMethod(self, @selector(imageNamed:));
    Method tuc_imageNamedMethod = class_getClassMethod(self, @selector(tuc_imageNamed:));

    // 交换方法
    method_exchangeImplementations(imageNamedMethod, tuc_imageNamedMethod);
}

+ (UIImage *)tuc_imageNamed:(NSString *)name {
    // 因为来到这里的时候方法实际上已经被交换过了
    // 这里要调用 imageNamed: 就需要调换被交换过的 tuc_imageNamed
    UIImage *image = [UIImage tuc_imageNamed:name];

    // 判断是否存在图片
    if (image) {
        NSLog(@"加载成功");
    } else {
        NSLog(@"加载失败");
    }

    return image;
}

未经允许不得转载:SEARU.ORG » RuntimeSummary

赞 (0)
分享到:更多 ()

评论 0