Просто обновите это на случай, если кто-то наткнется на это в наше будущее.
Поскольку iOS 6
/ Mac OS X 10.8
, новые макросы NS_ENUM
и NS_OPTIONS
являются предпочтительным способом объявления типов перечисления.
В этом случае это будет выглядеть так:
typedef NS_ENUM(NSInteger, MenuItemType) {
LinkInternal = 0,
LinkExternal = 1,
Image = 2,
Movie = 3,
MapQuery = 4
};
@interface MenuItem : NSObject {
NSMutableString *menuId;
NSMutableString *title;
MenuItemType menuType;
NSMutableArray *subMenuItems;
}
Хорошее чтение по теме: http://nshipster.com/ns_enum-ns_options/
Возможно, вы также захотите соответствовать соглашениям Apple по присвоению имен enum и пойти на что-то вроде:
typedef NS_ENUM(NSInteger, MenuItemType) {
MenuItemTypeLinkInternal = 0,
MenuItemTypeLinkExternal = 1,
MenuItemTypeImage = 2,
MenuItemTypeMovie = 3,
MenuItemTypeMapQuery = 4
};
Надеюсь, это поможет.