загрузить изображение с URL в режиме прокрутки - PullRequest
1 голос
/ 05 июля 2011

У меня есть массив изображений в режиме прокрутки. Я хочу загрузить увеличенное изображение с URL, когда я нажимаю на изображение. например, я нажимаю на изображение «page-001.jpg», затем проверяю данные изображения, а затем загружаю увеличенное изображение при просмотре изображения и возвращаю опцию, чтобы вернуться к предыдущему виду изображения.

Ответы [ 2 ]

1 голос
/ 05 июля 2011

Вы можете использовать SDWebImage .Просто добавьте файлы в свой проект и используйте

[UIImageview setImageWithURL:(NSURL*)url];

Эта библиотека также управляет кэшем и очень хорошо работает в UITableViewCell.

1 голос
/ 05 июля 2011

попробуйте

NSMutableArray *arr = [[NSArray alloc] initWithObjects:imageURL,imageView.tag, nil];
[self performSelectorInBackground:@selector(loadImageInBackground:) withObject:arr];



- (void) loadImageInBackground:(NSArray *)urlAndTagReference 
{
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

    // Retrieve the remote image. Retrieve the imgURL from the passed in array
    NSURL *imgUrl=[[NSURL alloc] initWithString:[urlAndTagReference objectAtIndex:0]];                 
    NSData *imgData = [NSData dataWithContentsOfURL:imgUrl];
    UIImage *img = [UIImage imageWithData:imgData];
    [imgUrl release]; 

    // Create an array with the URL and imageView tag to 
    // reference the correct imageView in background thread.

    NSMutableArray *arr = [[NSMutableArray alloc ] initWithObjects:img,[urlAndTagReference objectAtIndex:1], nil  ];

    // Image retrieved, call main thread method to update image, passing it the downloaded UIImage

    [self performSelectorOnMainThread:@selector(assignImageToImageView:) withObject:arr waitUntilDone:YES];
    [arr release];
    [pool release];
}

- (void) assignImageToImageView:(NSMutableArray *)imgAndTagReference
{
    UIImageView *profilePic = (UIImageView *)[cell.contentView viewWithTag:20];
    imageView.image = [imgAndTagReference objectAtIndex:0];
}
...