在我的项目中,我使用 NSObject+Properties.h
类别(请参阅 aqtoolkit:https://github.com/AlanQuatermain/aqtoolkit/blob/master/Extensions/NSObject%2BProperties.h)
然后我有一个类,我声明为
#import <Foundation/Foundation.h>
#import "NSObject+Properties.h"
@interface GFDictionaryInitiable : NSObject
...
然后我有 GFDictionaryInitiable
的几个子类,如GFRestaurant
:
#import <Foundation/Foundation.h>
#import "GFDictionaryInitiable.h"
@interface GFRestaurant : GFDictionaryInitiable
...
我的问题是我无法访问 NSObject+Properties
中定义的方法我的子类中的类别。例如我收到错误:
-[GFRestaurant hasPropertyNamed:]: unrecognized selector sent to instance 0x2e57240
如何让我的所有子类“继承”父类中加载的类别方法?
最佳答案
当您遇到运行时异常,而不是编译器错误时,我假设您忘记了 将“NSObject+Properties.m”添加到您的目标中。选择文件并检查 文件检查器中的“目标成员资格”复选框。
关于ios - objective-c : how to inherit category methods loaded in a parent class?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19432324/