2011-06-13 5 views

Répondre

2

Malgré toutes les réponses ici vous dire de le faire dans une ligne de code, cela ne changera malheureusement pas la vitesse de connexion à l'URL OU le décodage des données/images. Si vous voulez un moyen plus rapide de taper le code alors très bien, mais j'utiliseriez catégorie ajoutée à UIImageView ....

@interface UIImageView (URL) 

- (void)loadFromUrl:(NSString *)aUrl; 

@end 

@implementation UIImageView (URL) 

- (void)loadFromUrl:(NSString *)aUrl { 
    NSURL *url = [NSURL urlWithString:aUrl]; 
    NSData *data = [NSData dataWithContentsOfURL:url] 
    UIImage *image = [UIImage imageWithData:data]; 

    if(image != nil) { 
    [self setImage:image]; 
    } 
} 

@end 

Maintenant, vous pouvez inclure l'en-tête et à faire ...

[myImageView loadFromUrl:@"http://myurl.com/image.jpg"]; 

Pour plus de catégories (je vais ajouter celui-ci à ma liste!) Check here. Ceux qui sont tous mes utiles, vous pouvez les trouver utiles aussi! :)

+2

meilleure chose à ce sujet est qu'il peut être conservé et réutilisé, à travers les classes et à travers les projets! –

+2

Le pouvoir des catégories! –

+0

@ Daniel Hanly, @Simon Lee: Est-ce que cela fait une différence sur la vitesse de téléchargement de l'image par URL? – Jhaliya

0
[UIImage imageWithData:[NSData dataWithContentsOfURL:]] 
1

Utilisez tout en une seule instruction.

UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:MyURL]]]; 
+1

Vous vous rendez compte que faire cela dans une déclaration ne fait aucune différence à la vitesse de la connexion URL OU le décodage de l'image!?!? –

+0

@Simon Lee: D'accord, mais dans les deux cas, la vitesse dépend de la connectivité du réseau .. – Jhaliya

+1

C'est un moyen plus rapide de le taper, mais pas un moyen plus rapide de le traiter. Je pense que l'OP parle d'une vitesse de traitement plus rapide et non d'une vitesse de frappe plus rapide. –

0
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:imageUrl]]; 
0

essayez ceci: -

l'image

est UIImage et imageView est UIImageView

NSData *receivedData = [NSData dataWithContentsOfURL:@"yoururl"]; 
self.image=nil; 
UIImage *img = [[UIImage alloc] initWithData:receivedData ]; 
self.image = img; 
[img release]; 
[self.imageView setImage:self.image]; 
Questions connexes