iOS/Swift + Objective-c
[Objecitve-c] Category(카테고리) 사용 방법
안경 쓴 귀니
2021. 11. 2. 21:38
반응형
iOS Category(카테고리) 사용 방법
Category란?
기존에 정의된 클래스를 쉽게 확장할 수 있게 해주는 기능
사용 방법
1. 카테고리로 확장할 클래스 생성
1-1. Xcode File > New > File > Cocoa Touch Class 선택
1-2. 네이밍 규칙
Class 파일명은 확장할 클래스 이름+카테고리명으로 지정해야 한다.
아래 사진에서는 NSString+Test 로 지정했다.
1-3. 생성된 파일
// NSString+Test.h
#import <Foundation/Foundation.h>
@interface NSString_Test : NSObject
@end
// NSString+Test.m
#import "NSString+Test.h"
@implementation NSString_Test
@end
1-4. 생성된 파일 수정
생성된 파일에서 아래와 같이 @interface와 @implementation 부분을 수정한다.
// NSString+Test.h
#import <Foundation/Foundation.h>
// @interface 클래스명 (카테고리명)
@interface NSString (Test)
@end
// NSString+Test.m
#import "NSString+Test.h"
// @implementation 클래스명 (카테고리명)
@implementation NSString (Test)
@end
2. 메서드 추가
사용할 메서드를 추가한다.
// NSString+Test.h
#import <Foundation/Foundation.h>
@interface NSString (Test)
+(void)printHelloWorld;
@end
// NSString+Test.m
#import "NSString+Test.h"
@implementation NSString (Test)
+(void)printHelloWorld {
NSLog(@"HelloWorld!");
}
@end
3. 메서드 호출
추가한 메서드를 호출해서 사용하는 방법
// ViewController.m
#import "NSString+Test.h"
- (void)viewDidLoad {
[NSString printHelloWorld];
}
4. 결과 로그
HelloWorld!
반응형