How to scale a UIImageView proportionally?

Ronnie Liew picture Ronnie Liew · Oct 9, 2008 · Viewed 335.7k times · Source

I have a UIImageView and the objective is to scale it down proportionally by giving it either a height or width.

UIImage *image = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://farm4.static.flickr.com/3092/2915896504_a88b69c9de.jpg"]]];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image]; 

//Add image view
[self.view addSubview:imageView];   

//set contentMode to scale aspect to fit
imageView.contentMode = UIViewContentModeScaleAspectFit;

//change width of frame
CGRect frame = imageView.frame;
frame.size.width = 100;
imageView.frame = frame;

The image did get resized but the position is not at the top left. What is the best approach to scaling image/imageView and how do I correct the position?

Answer

Ken Abrams picture Ken Abrams · Feb 20, 2010

Fixed easily, once I found the documentation!

 imageView.contentMode = UIViewContentModeScaleAspectFit;