2016-09-20 6 views
1

Ich möchte folgendes tun:Wie kann AFNetworking ein Standardbild festlegen, wenn der Download fehlschlägt?

  1. Wenn das Bild wird geladen => ein Spinner oder ein anderes Bild angezeigt werden müssen Laden anzeigt;
  2. Wenn das Bild geladen ist => muss das Bild anzeigen;
  3. Wenn das Bild fehlschlägt => Muss ein statisches Bild "Kein Bild verfügbar" anzeigen.

Ich habe versucht:

- (void)setImageWithURL:(NSURL *)url 
    placeholderImage:(UIImage *)placeholderImage 

Aber ich kann nicht herausfinden, wie das Scheitern Ereignis zu behandeln.

+0

placeholderImage wird Incase Fehlerereignis angezeigt. –

+0

@TejaNandamuri Ich möchte ein anderes Bild im Fehlerfall angezeigt werden. Nicht derjenige beim Laden. – Zakaria

+0

pls Blick in SDWebImageView Kategorie, es hat alle Methoden, die Sie brauchen. –

Antwort

1

Warum nicht

setImageWithURLRequest:placeholderImage:success:failure: 

From the doc

verwenden und das gewünschte Platzhalter-Bild in dem Block nicht gesetzt?

Beispiel:

NSURLRequest * aURLRequest = [[NSURLRequest alloc] initWithURL:[[NSURL alloc] initWithString: @"A-URL"]]; 
UIImageView * img = [[UIImageView alloc] init]; 
__weak UIImageView* weakImg = img; 
[img setImageWithURLRequest:aURLRequest 
      placeholderImage:nil 
        success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) { 
         //default 
        } 
        failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) { 
         weakImg.image = [UIImage imageNamed:@"fallbackImage"]; 
        }]; 
+0

Und dann muss ich die Anfrage manuell erstellen. Ich dachte, es könnte einen einfacheren Weg geben: D – Zakaria

+0

Sie können es mit einer Hilfsmethode in einer Erweiterung einpacken, oder suchen Sie nach einer der vielen Bibliotheken herum, aber es ist einfach, es lohnt sich nicht :) – jalone

+0

Okay, als ich es versuchte Wenn ich es in eine Hilfsmethode setze und meinem Bild innerhalb des Fehlerblocks ein "kein verfügbares Bild" zuordne, erhalte ich folgende Fehlermeldung: 'Variable ist nicht zuweisbar (fehlender _Block-Typ-Spezifizierer)' – Zakaria

Verwandte Themen