Como acelerar o carregamento de imagens-Facebook api-iphone?
-
27-10-2019 - |
Pergunta
Aqui, estou criando um aplicativo para iPhone usando a API do Facebook.Carreguei a lista de amigos e suas fotos de perfil em uma visualização de mesa.Mas agora está funcionando lentamente.Quero acelerar o carregamento das fotos, como posso fazer isso?
Aqui está meu código de exemplo:
- (void)request:(FBRequest*)request didLoad:(id)result {
NSArray* users = result;
for (int ndx = 0; ndx < [users count] ; ndx++)
{
NSDictionary* user = [users objectAtIndex:ndx];
NSString* name = [user objectForKey:@"name"];
NSString *imageName = [user objectForKey:@"pic_big"];
[imageArray addObject:imageName];
[friendsList addObject:name];
}
}
No método de delegado tableview:
imageData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString: [imageArray objectAtIndex:indexPath.row]]];
image = [[UIImage alloc] initWithData:imageData];
cell.imageView.image =image;
E também os tamanhos das fotos são diferentes. Por favor ajude obrigado
Solução
Ao usar o conceito Lazyloading, você pode fazer com que ele seja executado rapidamente.
Basta baixar esta classe para lazyloading.
É muito fácil de impulsionar.
#import "UIImageView+WebCache.h" // Import this
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
------------------
------------------
[cell.imageView setImageWithURL:[NSURL URLWithString:@"http://www.domain.com/path/to/image.jpg"] placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
cell.textLabel.text = @"My Text";
return cell;
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow