2016-09-06 1 views
-1

Ich möchte ein Bild verwenden ImageWithContentsOfFile aus einem Pfad, aber es gibt keine nil.Then ich versuche ImageWithData, es gibt keine NULL zurück, aber die Daten nicht Null. Bitte helfen Sie mir, vielen Dank! Der Pfad wie "/var/mobile/Containers/Data/Application/F865E931-B673-4295-8AC3-B5C3560A10D6/Library/Caches/pic/0513041abff0edbb0e909a1364abe2ed.jpg" Übrigens, auf dem Simulator wird diese Art von Umstand nicht angezeigt, gibt nur auf der realen Maschine Null zurück.imageWithContentsOfFile return nil Und imageWithData return nil

NSString * strDestinationPath = [[mainKeepData getPicturesPath] stringByAppendingString:imageName]; 
NSFileManager * fileManager = [NSFileManager defaultManager]; 
     BOOL bl1 = [fileManager fileExistsAtPath:strDestinationPath]; 
     if (bl1 == NO) 
     { 
      [request setDownloadDestinationPath:strDestinationPath]; 
      [request setCompletionBlock:^(void){ 
       UIImage * image=[UIImage imageWithContentsOfFile:strDestinationPath]; 
       [PictureDict setValue:image forKey:strGUID]; 
       [self.delegate DownloadPictureIsOver:YES RequestID:RequetID]; 
      }]; 

      [request setUserInfo:[NSDictionary dictionaryWithObject:[NSString stringWithFormat:@"%@",strGUID] forKey:@"name"]]; 
      [networkQueue addOperation:request]; 
     } 
     else 
     { 
      NSData *imageData = [NSData dataWithContentsOfFile:strDestinationPath]; 
      UIImage *image = [UIImage imageWithData:imageData]; 
      [PictureDict setValue:image forKey:strGUID]; 
     } 

den Pfad-Funktion erhalten

+(NSString *)getPicturesPath 
{ 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES); 
    NSString *cachesDir = [paths objectAtIndex:0]; 

    NSString *filePath = [cachesDir stringByAppendingPathComponent:@"/pic/"]; 
    filePath=[filePath stringByAppendingString:@"/"]; 
    return filePath; 
} 
+0

wie strDestinationPath zu bekommen werden helfen? –

+0

Haben Sie überprüft, ob die durch den Pfad * angegebenen Daten * ein gültiger JPEG sind? –

+0

der Pfad und Bild ist verfügbar – Gigi

Antwort

0

Kann dies versuchen, könnten Sie

NSString *stringPath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0]stringByAppendingPathComponent:@"/pic/"]; 

return stringPath; 

// If you want particular image path 
stringPath = [stringPath stringByAppendingPathComponent:@"Your Img Name"]; 
UIImage *image = [UIImage imageWithContentsOfFile:stringPath]; 

Glückliche Codierung ...

+0

Sailendra Kumar, danke. aber das Bild ist immer noch – Gigi

+0

@Seven Wang bist du auf der Suche nach einem bestimmten Bild richtig ??? –

+0

sailendra kumar ja – Gigi

Verwandte Themen