UIImageView übers Web laden, in UIScrollView anzeigen

Heute musste ich Bilder aus dem Web in einem ImageView darstellen. Ich habe das folgendermaßen gelöst:

NSString *urlString = @"http://www.domain.de/image.jpg";
NSURL *url = [NSURL URLWithString:urlString];
NSData *data = [NSData dataWithContentsOfURL:url];
UIImage *img = [[UIImage alloc] initWithData:data];

Mit diesem Beispiel wird ein Bild in einem ImageView dargestellt, allerdings kann man dies noch nicht scrollen. Hierzu muss man den Aufbau der Datei etwas umgestalten. Man legt zuerst einen ScrollView an und in diesen ScollView wird dann der ImageView “geschoben”. Im Program muss man dann nur noch (am besten in der viewDidLoad-Methode) folgendes schreiben:

self.scrollView.contentSize = slef.imageView.size;

Nun geht schon einmal das scrollen im ImageView. Was noch nicht funktioniert ist das zoomen. Aber das ist auch kein Problem. Wir erweitern die viewDidLoad-Methode mit folgendem Code:

scrollView.delegate = self;
scrollView.maximumZoomScale = 4.0;
scrollView.minimumZoomScale = 0.1;

Und da wir die Klasse als UIScrollViewDelegate deklariert haben müssen wir noch folgende Protokoll-Methode einfügen die einfach nur den ImageView zurückgibt:

-(UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {
    return self.imageView;
}

Das war’s :-)

Im nächsten Artikel zeige ich wie man Dateien im WebView anzeigt, dies kann auch genutzt werden um Bilder anzuzeigen.

Dieser Beitrag wurde unter iOS abgelegt und mit , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>