Tutorial :loading a image from documents directory in iPhone



Question:

I want to load a image to UIImageView from my app documents library. I am trying to use the following code but it is not working.

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]];  

can someone help me with doing this. thanks...


Solution:1

See this related question which has the code you want.


Solution:2

If you really want to load an image from your app's documents folder, you could use this:

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];  

However, as pointed out by others here, you probably want to load it from your app bundle, in which case either of these will work:

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

or

NSString *path = [[NSBundle mainBundle] pathForResource:@"Thumbnail-small" ofType:@"jpg"];  background.image = [UIImage imageWithContentsOfFile:path];  


Solution:3

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];  


Solution:4

I think what you actually need is:

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


Solution:5

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  }  


Solution:6

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

This will load up what you want I think.


Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »