본문 바로가기

Development/IOS & Mac

Objective C Handler

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