2013年9月5日 星期四

objective-C中列舉(enum)的使用

第一種是原始的用法
.h檔
#import <Foundation/Foundation.h>
enum HHSlidaleViewModes{
    slideFromLeftToRight = 0,
    slideFromRightToLeft,
    rightSideFromCenter,
    leftSideFromCenter
};
@interface SlidableView : NSObject{
    enum HHSlidaleViewModes a;
}
.m檔
#import "SlidableView.h"
@implementation SlidableView
-(void)a{
    a = slideFromLeftToRight;
}
@end


第二種是通用的用法

首先,我們要先知道typedef是把型別名稱取一個別名
例如typedef int handsomeInt;
之後就可以宣告整數為 handsomeInt a = 100;

之後,我們就可以把上面的code改為:
.h檔
#import <Foundation/Foundation.h>
typedef enum HHSlidaleViewModes{
    slideFromLeftToRight = 0,
    slideFromRightToLeft,
    rightSideFromCenter,
    leftSideFromCenter
} hhSlidableViewModes;
@interface SlidableView : NSObject{
    hhSlidaleViewModes a;
}
.m檔
#import "SlidableView.h"
@implementation SlidableView
-(void)a{
    a = slideFromLeftToRight;
}
@end



//我自己的用法,利用typedef把後面的enum{running = 0,sleeping,header}改名為StepMode來使用
typedef enum{
    running = 0,
    sleeping,
    header

}StepMode;

沒有留言:

張貼留言