繁体   English   中英

目标C:如何继承加载在父类中的类别方法?

[英]Objective C: how to inherit category methods loaded in a parent class?

在我的项目中,我使用的是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”添加到目标中。 选择文件,然后在文件检查器中选中“目标成员身份”复选框。

只需添加:

#import "NSObject+Properties.h"

到您的子类.h文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM