Zastąp metodę za pomocą kategorii ObjC i wywołaj domyślną implementację?

Używając kategorii, możesz zastąpić metody implementacji własnymi, w ten sposób:

// Base Class 
@interface ClassA : NSObject 
- (NSString *) myMethod;
@end
@implementation ClassA
- (NSString*) myMethod { return @"A"; }
@end

//Category
@interface ClassA (CategoryB) 
- (NSString *) myMethod;
@end
@implementation ClassA (CategoryB)
- (NSString*) myMethod { return @"B"; }
@end

Wywołanie metody „myMethod” po uwzględnieniu kategorii oznacza wynik „B”.

Jak najłatwiej jest wywołać oryginalną klasę myMethod w implementacji kategorii myMethod? Tak blisko, jak tylko mogę się domyślić, trzeba użyć wywołań niskiego poziomu, aby uzyskać oryginalny hak metody dla klasy A i wywołać to, ale wydawało się, że będzie to łatwiejszy do syntaktycznego sposobu.

questionAnswers(4)

yourAnswerToTheQuestion