iOS关于调用方法找不到实现之前的三次补救办法

2019-10-14  本文已影响0人  Amor瑾年v

调用方法时如果一直找到NSObject还不响应,就会进入消息转发流程。

1.第一次

+ (BOOL)resolveInstanceMethod:(SEL)sel;

如果是类方法的话是+ (BOOL)resolclassMethod:(SEL)sel)
这个方法中我们可以用runtime动态添加方法

2.第二次

- (id)forwardingTargetForSelector:(SEL)aSelector

这个方法就是寻找备用接收者,也就是代理对象

3.第三次

- (void)forwardInvocation:(NSInvocation *)invocation

如果这个方法里面也不能处理的话就会报找不到方法异常了。

上一篇 下一篇

猜你喜欢

热点阅读