iOS에서도 Event Handling 과 같은 기법을 사용 할 수 있다.~! 나온지는 조금 지났지만 문법을 정리하자면..
아래와 같이 선언 후 객체처럼 사용하면 된다.
typedef void (^progressHandler)(float percentProgress);
-(void) addCalculationProgressHandler:(progressHandler)handler;
handler(111);
또 다른 방법
- (NSURLConnection *) requestPostUrl:(NSString *)urlStr Body:(id)body Handle:(void (^)(NSData *result)) handleBlock;
NSDictionary에 넣고 쓸 때는 아래와 같이 쓰면 된다.
void(^handlerBlock)(NSData *data);
handlerBlock = [m_handlerDic objectForKey:connectID];
if (handlerBlock != nil) {
dispatch_async(dispatch_get_main_queue(), ^{
handlerBlock(data);
});
}//end if
이 방법의 장점은....XCode에서 어시스트를 사용할 때에 자동 완성이 된다는 점이다.
'Development > IOS & Mac' 카테고리의 다른 글
iOS 파일 관련 정리 (0) | 2014.06.27 |
---|---|
[IOS Library] SSZipArchive (0) | 2014.06.20 |
[iOS] PBJVision (0) | 2014.06.16 |
[iOS] UITableView HeaderView Frame Animation (0) | 2014.05.25 |
[IOS Library] UltraVisual 스타일 CollectionView (0) | 2014.05.15 |