How to fill NSMutableArray with images from Parse - ios

Hello I need to fill a NSMutableArray with images from parse.com can anyone please help
patternImages = [NSMutableArray arrayWithObjects:#"neon-autumn.gif", #"alchemy.jpg", #"white-wood.jpg", #"green-goblin.png", #"subway-lines.png", #"canvas-orange.jpg", #"kiwis.png", #"cuadros.png", #"hodgepodge.png", #"naranjas.png", #"bunting-flag.png", nil];
I need to display the images from my database in Parse.com

I would get the url from the PFFile using file.url, then create an image using that url, and add each image to your array.
NSURL *url = [NSURL URLWithString:file.url];
NSData *data = [NSData dataWithContentsOfURL:url];
UIImage *img = [[UIImage alloc] initWithData:data cache:NO];

Related

how to encode image base64 formatted

I am getting image From JSON url.I tried like this but i did't not get image
NSMutableArray *al=[NSJSONSerialization JSONObjectWithData:webData options:0 error:nil];
NSLog(#"all NSMutable2%#",al);
NSDictionary *dict = [al objectAtIndex:1];
NSString *title=[dict objectForKey:#"dealimage"];
NSLog(#"all DIC%#",title);
NSData *data1 = [[NSData alloc] initWithData:[NSData
dataFromBase64String:title]];
NSLog(#"********************************%#",data1);
NSData* data = [Base64 decode:title ];
UIImage *image = [UIImage imageWithData:data];
dig=[[UIImageView alloc]initWithImage:image];
[self.view addSubview:dig];
dig.frame = CGRectMake(0, 25 , 150,150);
My idea is first NSString data converted to NSData and Then NSData pass to UIImage.But No luck
So Please give me any idea
#import "NSData+Base64.h"
//Creating the data from your base64String
NSData *data = [[NSData alloc] initWithData:[NSData dataFromBase64String: title]];
//Now data is decoded. You can convert them to UIImage
UIImage *image = [UIImage imageWithData:data];
dig=[[UIImageView alloc]initWithImage:image];
dig.frame = CGRectMake(0, 25 , 150,150);
[self.view addSubview:dig];

Image fetched from webservice is not displaying in viewcontroller

I tried fetching the image location but its not displaying it in UIImageView, the code which is used for fetching is,
in class.h file,
#property (strong, nonatomic) IBOutlet UIImageView *imageview;
class.m file,
NSString *imagee;
imagee = [result objectForKey:#"image"];
NSLog(#"image is %# \n",imagee);
the 'imagee' string could return the exact url for the image.
code for image displaying is,
UIImage *imagevieww = [UIImage imageNamed:[result objectForKey:#"image"]];
imageview.image = imagevieww;
but at final i could get the empty space where the image should be placed.
Found the answer for my problem, thanks for everyone who helped me to find this answer.
UPDATED: Include 'http' with the urlstring so that, it can fetch the correct image from the webservice.
NSString *urlString = [NSString stringWithFormat:#"http://%#",[result objectForKey:#"image"]];
NSLog(#"url image is %# \n",urlString);
NSData *imageData = [[NSData alloc] init];
imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:urlString]];
NSLog(#"image data is %#",imageData);
imageview.image = [UIImage imageWithData:imageData];
The UIImage method imageNamed: is used to load image present locally. In your case you need to download the image from the URL. There are various ways to do this based on requirement.
Easiest one is,
//URL encode the string
NSString *url = [[result objectForKey:#"image"] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:url]];
imageview.image = [UIImage imageWithData:imageData];
This will download the image synchronously and on the main thread(if called from main thread). You want to do this asynchronously on background thread. Usually dispatch_async(GCD) is used for doing this.
Hope that helps!
If 'imagee' returned exact url , then fetch the image from web service should be like this.
imageview.image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:[result objectForKey:#"image"]]]];
Try this
NSString *imageString = [NSString stringWithFormat:#"data:image/jpg;base64,%#",[yourDict objectForKey:#"ImageString"]];
NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:imageString]];
UIImage *image = [UIImage imageWithData:imageData];
.h
#property (strong, nonatomic) IBOutlet UIImageView *imageView;
.m
Get Image From Webservices:
NSURL *url = [NSURL URLWithString:#"http://www.site.com/image.jpg"];
NSData *myImageData = [NSData dataWithContentsOfURL:url];
UIImage *image = [[UIImage alloc] initWithData:myImageData];
Set Image to ImageView:
imageView.image = image;
I did the following and it works for me.
NSURL *url = [NSURL URLWithString:#"http://www.yourdomain.com/imagename.png"];
NSData *myData = [NSData dataWithContentsOfURL:url];
UIImage *image = [[UIImage alloc] initWithData:myData];
["%storyboardImageName%" setImage:image];
Please note that storyboardImagename is the variable that you put on the xib or storyboard. You will need to change it. Also note the 'setImage' attribute which actually ties it together.
Hope this helps.
Convert the URL into UIImage,
Try This:
NSURL *url = [NSURL URLWithString:#"http://yoursite.com/imageName.png/jpg"];
NSData *myData = [NSData dataWithContentsOfURL:url];
UIImage *image = [[[UIImage alloc] initWithData:myData] autorelease];
Use this image on imageview. If you are getting problem then try to download the image in background.
Follow this Link

UITableViewCell images not loading ios

I am trying to download images asynchronously and display them in UITableViewCell imageView. The problem is that my NSURL is nil for some reason..
NSString *urlString = feed[#"imageURL"];
NSLog(#"urlString %#", urlString);
NSURL *url = [NSURL URLWithString:urlString];
NSLog(#"url image %#", url);
This will print something like
urlString http://www.....image.jpg
url image (null)
Can someone please tell me why this is happening? Thanks.
What your doing is getting the contents within a url with NSURL. Once you have the contents of the url, you are basically saying to the compiler, load these SOMETHING contents from this url. But that SOMETHING whether it's an image or json object or whatever, needs to be loaded into an NSData object then load the NSData object into a UIImage object. Now you can just say cell.imageView.image = theUIimage for your exact problem but heres a simple example that just loads such UIImage into a UIImageView like so:
NSURL *URL = [NSURL URLWithString:#"http://l.yimg.com/a/i/us/we/52/37.gif"];
NSData *data = [NSData dataWithContentsOfURL:URL];
UIImage *img = [[UIImage alloc] initWithData:data];
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 50, 50)];
imageView.image = img;
[self.view addSubview:imageView];
Please no downvote :)

NSURL with Pipes |

I'm trying to initialize an UIImage via URL.
This is the code I wrote:
NSString * path = [NSString stringWithFormat:#"%#",[[_tours objectAtIndex:indexPath.row]objectForKey:#"map_url"]];
NSURL *url = [NSURL URLWithString:path];
NSData *data = [NSData dataWithContentsOfURL:url];
UIImage *img = [[UIImage alloc]initWithData:data];
[[cell tourPreviewImage]setImage:img];
....
An example map_url looks like the following:
https://maps.google.com/maps/api/staticmap?size=200x200&maptype=roadmap&markers=size:big|color:green|72.3601030185,41.4626763775&markers=size:big|color:red|45.4563468516,94.4774796973&sensor=false
It seems that the NSURL Object cant handle the | Pipe Character the right way because i dont get any image data. If I delete the parameters separated by the pipe out of the url everything works fine.
Any Ideas how to solve this problem?
ok i found a solution for this. Encoding is what did go wrong.
NSString * path = [NSString stringWithFormat:#"%#",[[_tours objectAtIndex:indexPath.row]objectForKey:#"map_url"]];
path = [path stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *url = [NSURL URLWithString:path];
NSData *data = [NSData dataWithContentsOfURL:url];
UIImage *img = [[UIImage alloc]initWithData:data];
[[cell tourPreviewImage]setImage:img];

Displaying image from XML

I'm using NSXMLParser and I want to display images from XML as a <url> node using UITableViewCell.
Inside the table view's cellForRowAtIndexPath, I'm using this code:
NSURL * imageURL = [NSURL URLWithString:[[stories objectAtIndex:indexPath.row]
objectForKey:#"url"]];
NSData * imageData = [NSData dataWithContentsOfURL:imageURL];
UIImage * newsPhoto = [[UIImage alloc] initWithData:imageData];
cell.imageView.image = newsPhoto;
But the image never shows up. I can see the result in the log.
Please advise.

Resources