2014-05-19 54 views
0

我有一個圖像滑塊,並使用setImageWithURLRequest從url下載圖像。假設用戶從應用程序代碼的左側滑動到右側,那麼我必須顯示我可以實現的最右側的索引圖像,但在此之後,我必須從索引的開頭下載圖像。如何實現這一目標?AFNetworking:使用setImageWithURLRequest的異步圖像下載

for (int i = 0; i < self.items.count; i++) { 
    CGRect frame; 
    frame.origin.x = scrollView.frame.size.width * i; 
    frame.origin.y = 0; 
    frame.size = scrollView.frame.size; 
    UIView *subview = self.view; 

    UIImageView *imageView = [[UIImageView alloc] initWithFrame:frame]; 
    imageView.contentMode = UIViewContentModeCenter; 
    subview = imageView; 

    NSURLRequest *imagerequest = [NSURLRequest requestWithURL:[_items objectAtIndex:i]]; 
    __weak UIImageView *weakImageView = (UIImageView *) subview; 

    [(UIImageView *) subview setImageWithURLRequest:imagerequest 
           placeholderImage:[UIImage imageNamed:@"placeholder.gif"] 
             success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) { 

              UIImageView *strongImageView = weakImageView; // make local strong reference to protect against race conditions 
              if (!strongImageView) return; 

              strongImageView.image = image; 

             } 
             failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) { 
              //[activityIndicatorView removeFromSuperview]; 

              // do any other error handling you want here 
             }]; 

    [scrollView addSubview:subview]; 
} 
+0

請添加一些您的代碼 – gran33

回答

1

U可以使用UIImageView+AFNetworking.h

- (void)setImageWithURL:(NSURL *)url 
     placeholderImage:(UIImage *)placeholderImage; 

實施例:

[imageView setImageWithURL:<url> placeholderImage:<image>]; 

或者:

- (void)setImageWithURLRequest:(NSURLRequest *)urlRequest 
       placeholderImage:(UIImage *)placeholderImage 
         success:(void (^)(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image))success 
         failure:(void (^)(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error))failure; 

實施例:

[imageView setImageWithURL:<url> placeholderImage:<image> success:<successBlock> failure:<faliureBlock>]; 
+0

我正在使用setImageWithURLRequest方法進行異步圖像下載。但我需要做的是,當用戶從左向右滑動,然後停止索引時,我必須加載使用setImageWithURLRequest方法發生的圖像,但同時所有其他圖像也應該一個接一個下載。 –