2009-06-20 10 views
10

Ich möchte ein Bild von meiner App-Dokumentbibliothek in UIImageView laden. Ich versuche, den folgenden Code zu verwenden, aber es funktioniert nicht.Laden eines Bilds aus dem Dokumentenverzeichnis des iPhone

UIImageView *background = [[[UIImageView alloc] initWithFrame:CGRectMake(3, 10, 48, 36)] autorelease]; 

[background setImage:[[UIImage imageAtPath:[[NSBundle mainBundle] pathForResource:@"Thumbnail-small" ofType:@"jpg" inDirectory:@"/Users/nbojja/Library/Application Support/iPhone Simulator/User/Applications/60C2E4EC-2FE0-4579-9F86-08CCF078216D/Documents/eb43ac64-8807-4250-8349-4b1f5ddd7d0d/9286371c-564f-40b4-99bd-a2aceb00a6d3/9"]]] retain]]; 

kann mir jemand dabei helfen. Dank ...

+1

Warum nicht nur imagenamed auf UIImage verwenden? – Grouchal

Antwort

0

Ich denke, was Sie wirklich brauchen, ist:

UIImage *img = [UIImage imageWithContentsOfFile: [[NSBundle mainBundle] pathForResource:@"myimagefile" ofType:@"png"]]; 
[self.testView.imgView setImage:img]; 
+0

Diese Lösung funktioniert –

-4

Verwenden [UIImage imageNamed:@"ThumbnailSmall.jpg"];

Dies laden, was Sie wollen, denke ich.

26

Wenn Sie wirklich ein Bild von Ihrer App Dokumente Ordner laden möchten, können Sie diese verwenden:

NSArray *sysPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *docDirectory = [sysPaths objectAtIndex:0]; 
NSString *filePath = [NSString stringWithFormat:@"%@/Thumbnail-small.jpg", docDirectory]; 
background.image = [[[UIImage alloc] initWithContentsOfFile:filePath] autorelease]; 

jedoch, wie hier von anderen darauf hingewiesen wird, Sie wollen wahrscheinlich es von Ihrer App laden Bündel wird in diesem Fall eine dieser Arbeit:

background.image = [UIImage imageNamed:@"Thumbnail-small.jpg"]; 

oder

NSString *path = [[NSBundle mainBundle] pathForResource:@"Thumbnail-small" ofType:@"jpg"]; 
background.image = [UIImage imageWithContentsOfFile:path]; 
4
NSString *docPath = [NSSearchPathForDirectoriesInDomains (NSDocumentDirectory,NSUserDomainMask, YES) objectAtIndex:0]; 
NSString *filePath=[NSString stringWithFormat:@"%@/image.png",docPath]; 

BOOL fileExists=[[NSFileManager defaultManager] fileExistsAtPath:filePath]; 

if (!fileExists) 
    NSLog(@"File Not Found"); 
else 
    image = [UIImage imageWithContentsOfFile:filePath]; 
0

Swift 3:

let nsDocumentDirectory = FileManager.SearchPathDirectory.documentDirectory 
let nsUserDomainMask = FileManager.SearchPathDomainMask.userDomainMask 
let paths = NSSearchPathForDirectoriesInDomains(nsDocumentDirectory, nsUserDomainMask, true) 
if let dirPath = paths.first { 
let imageURL = URL(fileURLWithPath: dirPath).appendingPathComponent("Image2.png") 
let image = UIImage(contentsOfFile: imageURL.path) 
// Do whatever you want with the image 
} 
Verwandte Themen