我有一個tableview,它運行一些代碼,用於在後臺線程中從NSData獲取UIImage,然後在前臺調用[button setImage:image forState:UIControlStateNormal];
。setImage:forState:落後UI
問題是它在該行凍結了一秒鐘的UI,直到它完成。這意味着UI設置爲圖像時凍結。因爲用戶正在滾動,所以這是非常明顯的和緊張的。有沒有辦法避免我的用戶界面像這樣凍結?
dispatch_queue_t cellSetupQueue = dispatch_queue_create("Setup", NULL);
dispatch_async(cellSetupQueue, ^{
UIImage *image = [self.mediaDelegate largeThumbnailForMediaAtIndex:indexPath.row];
dispatch_async(dispatch_get_main_queue(), ^{
[self.thumbnailButton setImage:image forState:UIControlStateNormal];
});
});
dispatch_release(cellSetupQueue);
你可以發佈代碼嗎? – danh
@danh將它貼在 – Andrew
以上,我們需要'setThumbnailToImage:animated:'as-well – vikingosegundo