¿Cómo mezclar un método de clase en iOS?
El método swizzling funciona muy bien, por ejemplo, los métodos. Ahora, necesito mezclar un método de clase. ¿Alguna idea de cómo hacerlo?
Intenté esto pero no funciona:
void SwizzleClassMethod(Class c, SEL orig, SEL new) {
Method origMethod = class_getClassMethod(c, orig);
Method newMethod = class_getClassMethod(c, new);
if(class_addMethod(c, orig, method_getImplementation(newMethod), method_getTypeEncoding(newMethod)))
class_replaceMethod(c, new, method_getImplementation(origMethod), method_getTypeEncoding(origMethod));
else
method_exchangeImplementations(origMethod, newMethod);
}