2012-12-20 72 views
9

我有一個表視圖,它使用來自AFNetworking的帶有佔位符圖像的延遲加載來顯示圖像。我試圖完成一種從佔位符到圖像加載時淡入淡出的方式。我的代碼在這裏工作,但如果在滾動表格時加載圖像,一切看起來都很奇怪,表格停止滾動。具有相同效果的水平滾動器也會發生同樣的情況。AFNetworking - 在滾動時在圖像上淡化動畫UITableView

下面是我使用的是內部的cellForRowAtIndexPath

[cell.hotelImage setImageWithURLRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:hotelImageUrl]] 
        placeholderImage:[UIImage imageNamed:@"placeholder.png"] 
          success:^(NSURLRequest *request , NSHTTPURLResponse *response , UIImage *image){ 

           if (request) { 
            //Fade animation 
            [UIView transitionWithView:self.view 
                duration:1.0f 
                 options:UIViewAnimationOptionTransitionCrossDissolve 
                animations:^{ 
                 [cell.hotelImage setImage:image]; 
                } completion:NULL]; 

           } 


          } 
          failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error){ 

          } 
]; 

我使用的是如果(請求),以避免一旦動漫形象是在高速緩存中的代碼。

非常感謝提前。

回答

14

代替self.view試試這個cell.hotelImage 這將工作:)

[UIView transitionWithView:cell.hotelImage 
    duration:1.0f 
    options:UIViewAnimationOptionTransitionCrossDissolve 
    animations:^{[cell.hotelImage setImage:image];} 
completion:NULL]; 
+0

工作真棒。非常感謝你! – Chompas