티스토리 뷰
objc 에서 콜백함수에 대한 이벤트리스너를 만드려면 1. block(^) 2. selector 3. noti 4. delegate 가 있다고 한다.
현재 상황에서 나에게 필요한건 block 이었기 때문에 혹시 필요하신 분들을 위해 샘플코드를 제공합니다.
@implementation
-(void)doSomething:(void (^)(BOOL, int))completionBlock
{
NSLog(@"Do Something first");
completionBlock(YES, 1);
completionBlock(NO, 2);
NSLog(@"Then may be something else");
}
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
[self doSomething:^(BOOL isOk, int code) {
//code
}]
}
@end
typedef 정의 스타일
헤더
typedef void (^responseBlock)(BOOL, int);
@implementation
-(void)doSomething:(responseBlock)completionBlock
{
NSLog(@"Do Something first");
completionBlock(YES, 1);
completionBlock(NO, 2);
NSLog(@"Then may be something else");
}
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
[self doSomething:^(BOOL isOk, int code) {
//code
}]
}
@end
'Development Note > iOS' 카테고리의 다른 글
[objective-c] NSURL 사용법 (0) | 2020.07.23 |
---|---|
[objective-c] md5 encode 하기 (0) | 2020.07.16 |
[objective-c] The app delegate must implement the window property if it wants to use a main storyboard file. (solved) (0) | 2020.07.15 |
[objective-c] 하나의 워크스페이스 + 다수의 프로젝트에서 pod 사용법 (0) | 2020.07.06 |
[objective-c] isKindOfClass 사용법 (0) | 2020.07.03 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- nsurl to nsstring convert
- abs 함수
- Error Domain=SKErrorDomain Code=0
- 퍼미션체크
- permissionCheck
- NSUserDefaults 예제
- 절대값함수
- abs
- Golang
- ioutil
- tempdir
- nsurl 에서 nsstring 변환
- DeviceModel
- dialog
- tempfile
- java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line
- Locale.getDefault().getLanguage()
- iTunes Store에 연결할 수 없음
- convert nsurl to nsstring
- setCancelable vs setCanceledOnTouchOutside
- countryName
- countryCode
- LanguageCode
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함