괴발개발/iOS, Swift
Asynchronous image loading (비동기 이미지 로딩)
PirTaJa
2012. 10. 26. 16:33
추가후 사용
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | - (void) loadAsyncImageFromURL:(NSURL *)url imageBlock:(void (^) (UIImage *image))imageBlock errorBlock:(void(^)(void))errorBlock { dispatch_async( dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_DEFAULT, 0 ), ^(void){ NSData * data = [[NSData alloc] initWithContentsOfURL:url]; UIImage * image = [[UIImage alloc] initWithData:data]; dispatch_async( dispatch_get_main_queue(), ^(void){ if( image != nil ) { imageBlock( image ); } else { errorBlock(); } }); }); } |