Objective C - 枚举的getter和setter属性

时间:2011-07-28 17:33:46

标签: iphone objective-c enums properties

我是Objective-C的新手。我有一个枚举如下:

typedef enum _XLBadgeManagedType {
    XLInboxManagedMethod = 0,
    XLDeveloperManagedMethod = 1
} XLBadgeManagedType ;

我想为它设置getter和setter方法,这样如果发生了某些事情,我会将XLInboxManagedMethod设置为1.我将如何进行此操作?

3 个答案:

答案 0 :(得分:13)

您的代码只是定义枚举类型。它是一个静态的编译时常量,不会改变。您可以通过声明一个实例,然后将其更改为您定义的常量值之一来使用枚举。如果你的枚举看起来像:

typedef enum _XLBadgeManagedType {
    XLInboxManagedMethod = 0,
    XLDeveloperManagedMethod = 1
} XLBadgeManagedType;

然后你的财产看起来像:

@property (nonatomic, assign) XLBadgeManagedType myEnum;

它的用途可能如下:

- (void)someMethod {

    self.myEnum = XLInboxManagedMethod;
    self.myEnum = XLDeveloperManagedMethod;
    // etc...
}

答案 1 :(得分:2)

您不会更改枚举值。他们保持原样。

答案 2 :(得分:0)

它们是象征性的常数。你无法改变它。