我想重新加载+ (BOOL)resolveClassMethod:(SEL)sel
方法以在超类中添加我的未解析方法的自定义实现,如下所示:
+ (BOOL)resolveClassMethod:(SEL)sel {
BOOL result = [super resolveClassMethod:sel];
if (result) {
return result;
}
/*my logic here*/
}
但是我注意到,当我+bundleForClass:
用这个类调用方法时,它实际上是resolveClassMethod:
用bundleForClass:
选择器作为参数调用的。而且,当然,[super resolveClassMethod:sel];
返回“否”,它就会进入我的逻辑。代码:
NSBundle *classBundle = [NSBundle bundleForClass:NSClassFromString(@"MyClass")];
为什么上面的代码+resolveClassMethod:
在 MyClass 上调用?我的目标是将我的自定义类方法的实现添加到类中,而不是标准方法的实现bundleForClass:
,所以我如何检查这样的方法来跳过它。