我将常量和自定义枚举放在一个单独的.h文件中。该文件是NSObject
的子类。
typedef NS_ENUM(NSInteger, MyEnumName) {
EnumValueOne,
EnumValueTwo
};
在另一个也是NSObject
的子类的类中,我有一个枚举的属性。
@property (assign, nonatomic) MyEnumName hello;
在其实现文件中,我试图设置它的值,
self.hello = EnumValueTwo;
但我在那条线上收到错误说,
没有setter方法'setHello:'用于分配属性
我尝试手动为该属性声明一个setter方法,但它仍然无效。
如果我在视图控制器中执行相同的操作,它可以正常工作。不能在NSObject
子类中执行此操作。
有人可以告诉我为什么会这样以及如何纠正它?
谢谢。
答案 0 :(得分:1)
在示例项目中,您尝试在类方法中调用self ..这是问题而不是枚举。您无法从类方法访问self或任何实例变量。