2012-12-02 152 views
0

我想從一個JSON feed加載圖像到tableview。下面的代碼會返回圖片,但它會讓應用程序變得非常緩慢和「粘性」。有關如何使其更快的任何想法?這被稱爲tableview中的每個單元格。桌面視圖圖像加載緩慢

NSURL *imageURL = [NSURL URLWithString:@"http://www.site.com/images/image_1.jpg"]; 
NSData *imageData = [NSData dataWithContentsOfURL:imageURL]; 
UIImage *cellImage = [UIImage imageWithData:imageData]; 

謝謝大家!

+0

您需要在另一個線程中運行圖像加載。 – pbibergal

回答

2

請嘗試下面的代碼。

dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); 
dispatch_group_t group = dispatch_group_create(); 
dispatch_group_async(group, queue, ^{ 
    NSURL *imageURL = [NSURL URLWithString:@"http://www.site.com/images/image_1.jpg"]; 
    NSData *imageData = [NSData dataWithContentsOfURL:imageURL]; 
    UIImage *cellImage = [UIImage imageWithData:imageData]; 

    dispatch_sync(group, ^{ 
     cell.image = cellImage; 
    }); 
}); 
dispatch_release(group);