찾아봐도 objc는 c++ c# java 처럼 enum에서 nsstring 으로 자료형캐스팅은 안되는것 같다
시간이 없기에 이와 같은 방식으로 처리함.
선언부
#import <Foundation/Foundation.h>
typedef NS_ENUM(NSInteger, LoginType)
{
GOOGLE,
FACEBOOK,
APPLE,
GUEST,
};
NS_ASSUME_NONNULL_BEGIN
@interface EnumType : NSObject
+ (NSString*) convertToString:(LoginType)type;
@end
NS_ASSUME_NONNULL_END
구현부
#import "EnumType.h"
@implementation EnumType
+ (NSString*) convertToString:(LoginType) type
{
NSString *result = nil;
switch(type)
{
case GOOGLE:
result = @"GOOGLE";
break;
case FACEBOOK:
result = @"FACEBOOK";
break;
case APPLE:
result = @"APPLE";
break;
case GUEST:
result = @"GUEST";
break;
default:
result = @"unknown";
}
return result;
}
@end
출처
https://stackoverflow.com/questions/6331762/enum-values-to-nsstring-ios