runtime-API-imp

2023-11-13  本文已影响0人  Berning

1.通过block获取imp

    IMP imp_block = imp_implementationWithBlock(^{
        NSLog(@"do something");
    });
    
    BOOL is_add = class_addMethod(NSPerson.class, @selector(travel), imp_block, "v@:");
    if(is_add)
    {
        [NSPerson.new travel];
    }

2.通过imp 获取block

    id block = imp_getBlock(imp_block);
    NSLog(@"%@",block);

3.移除block

    BOOL is_removed = imp_removeBlock(imp_block);
    NSLog(@"is_removed:%d",is_removed);

上一篇 下一篇

猜你喜欢

热点阅读