NSObjectの上にカテゴリを作成しました。これは、すべてのクラスに、次の2つのクラスメソッドを継承させたいためです。
@interface NSObject (MyCategory)
+ (MyEnum) getXYZ;
+ (void) setXYZ:(MyEnum)myEnum;
@end
次に、このカテゴリをPCHファイルにインポートしました。
#ifdef __OBJC__
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import "NSObject+MyCategory.h"
#endif
次に、クラスの1つでメソッドを使用しました。
[[self class]getXYZ];
実行時にこのエラーが発生しました:
+[MyClass getXYZ]: unrecognized selector sent to class 0xd04f4
*** Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: '+[MyClass getXYZ]: unrecognized selector sent to class 0xd04f4'
私は何か間違ったことをしましたか?カテゴリはよく書かれていますか?クラスメソッドは継承されませんか?[セルフクラス]の代わりに[スーパークラス]を使用する必要がありますか?PCHファイルは私のカテゴリをインポートする場所ですか?
ありがとう、Nur