Crop UIImage to fit a frame image
In Interface Builder, use the following configuration:
There are two important settings, namely:
Mode: Aspect Fill
Clip Subviews
It can also be done programmatically:
[imageView setContentMode:UIViewContentModeScaleAspectFill];
[imageView setClipsToBounds:YES];
This will correctly fill the view with the image, keep its aspect ratio and hide what doesn't fit.
make a IBOutlet
in your controller.
@property (retain)IBOutlet UIImageView* imageView;
and in -(void) viewDidLoad
set
imageView.layer.masksToBounds = YES;
In interface Builder, access the Mode menu inside of the detail pane (the fourth one) and choose the right one for your UIImageView
(I guess "center" or "aspect fit").
OLD ANSWER:
You can use the contentGravity
property of CALayer to make it work
A constant that specifies how the layer's contents are positioned or scaled within its bounds.
@property(copy) NSString *contentsGravity