Sep 102013
 

XcodeのObjective-Cで開発している際に使うenumにはNS_ENUMが使える。型の定義を一括で記述できる。NS_OPTIONSを使うとビットマスクの定義が楽になる。

NS_ENUM

NS_ENUM(新しい型を保存する型,新しい型)という使い方。

typedef enum {
    UITableViewCellStyleDefault,
    UITableViewCellStyleValue1,
    UITableViewCellStyleValue2,
    UITableViewCellStyleSubtitle
};
typedef NSInteger UITableViewCellStyle;

上はNS_ENUMを使うと記述を整理できる。

typedef NS_ENUM(NSInteger, UITableViewCellStyle) {
    UITableViewCellStyleDefault,
    UITableViewCellStyleValue1,
    UITableViewCellStyleValue2,
    UITableViewCellStyleSubtitle
};

NS_OPTIONS

ビットマスクを列挙して定義したい場合に便利。

NS_OPTIONS(新しい型を保存する型,新しい型)という使い方。

typedef NS_OPTIONS(NSUInteger, UIViewAutoresizing) {
    UIViewAutoresizingNone                 = 0,
    UIViewAutoresizingFlexibleLeftMargin   = 1 << 0,
    UIViewAutoresizingFlexibleWidth        = 1 << 1,
    UIViewAutoresizingFlexibleRightMargin  = 1 << 2,
    UIViewAutoresizingFlexibleTopMargin    = 1 << 3,
    UIViewAutoresizingFlexibleHeight       = 1 << 4,
    UIViewAutoresizingFlexibleBottomMargin = 1 << 5
};

参考サイト

http://nshipster.com/ns_enum-ns_options/

http://blog.manbolo.com/2013/08/21/objectivec-coding-style-guide

コメント

個のコメント

Powered by Facebook Comments

 Posted by at 15:43

Sorry, the comment form is closed at this time.