【问题标题】:Objective C - Getter and setter properties for enumObjective C - 枚举的 Getter 和 setter 属性
【发布时间】:2011-07-28 17:33:45
【问题描述】:

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

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

我想为它设置 getter 和 setter 方法,这样如果发生什么事情,我将 XLInboxManagedMethod 设置为 1。我该怎么做呢?

【问题讨论】:

  • 您对enumenumeration 是什么感到困惑。这是一个静态的、恒定的值列表。如果要设置属性,请使用属性。

标签: iphone objective-c enums properties


【解决方案1】:

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

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

那么您的属性可能如下所示:

@property (nonatomic, assign) XLBadgeManagedType myEnum;

它的用法可能看起来像:

- (void)someMethod {

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      它们是符号常量。你不能改变它。

      【讨论】:

        猜你喜欢
        • 2017-10-30
        • 1970-01-01
        • 2023-03-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多