Dies ist ein dreistufiger Prozess. Zuerst erstellen Sie eine NSURL
Objekt, das die URL enthält, auf die wir zuzugreifen versuchen. Wir übergeben diese URL an das NSData
Klasse Methode, +dataWithContentsOfURL:
um das Bild über das Netz als Rohdaten zu erhalten, und verwenden Sie dann die +imageWithData:
Klassenmethode auf UIImage
um die Daten in ein Bild umzuwandeln.
NSURL *imageURL = [NSURL URLWithString:@"http://example.com/demo.jpg"];
NSData *imageData = [NSData dataWithContentsOfURL:imageURL];
UIImage *image = [UIImage imageWithData:imageData];
Bitte beachten Sie, dass +dataWithContentsOfURL:
führt eine synchrone Netzwerkanfrage aus. Wenn Sie dies im Hauptthread ausführen, wird die Benutzeroberfläche blockiert, bis die Bilddaten vom Netzwerk empfangen wurden. Am besten ist es, jeglichen Netzwerkcode in einem Hintergrund-Thread auszuführen. Wenn Sie auf OS 4.0+ abzielen, könnten Sie so etwas tun...
NSURL *imageURL = [NSURL URLWithString:@"http://example.com/demo.jpg"];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^{
NSData *imageData = [NSData dataWithContentsOfURL:imageURL];
dispatch_async(dispatch_get_main_queue(), ^{
// Update the UI
self.imageView.image = [UIImage imageWithData:imageData];
});
});