super performSelector: 解决objc调用父类私有方法的问题
Objc中[super performSelector: ...]并不会像其他语言一样能良好的工作。super只是编译器符号。
想要安全和快速的调用父类的方法是直接调用父类方法的函数地址:
Method md = class_getInstanceMethod(class_getSuperclass(self.class), @selector(XXXXX:)); IMP imp = method_getImplementation(md); void(*super_imp)(id,SEL,id) = (void*)imp; super_imp(self, @selector(XXXXX:), 参数1, 参数2, 参数3,... ...);