我需要根据高度设置UIImageView大小aspectfit。
意味着我的要求是我的图像高度应该被修复,但图像的宽度应该根据高度改变我知道在UIViewContentModeScaleAspectFit中它会自动采取宽度和高度但是如果我需要修复高度和动态宽度如aspectfit根据身高。
答案 0 :(得分:3)
UIImage *originalImage = [UIImage imageNamed:@"image.png"];
double width = originalImage.size.width;
double height = originalImage.size.height;
double apect = width/height;
double nWidth = 320.f/ apect;
self.img.frame = CGRectMake(0, 0, nWidth, 320.f);
self.img.center = self.view.center;
self.img.image = originalImage;
答案 1 :(得分:0)
-(CGSize)resizeImage:(CGSize)imageSize toTargetedHeight:(float)height {
NSLog(@"actualImageSize : %@", NSStringFromCGSize(imageSize));
float scaleFactor = height / imageSize.height;
float newHeight = imageSize.height * scaleFactor;
float newWidth = imageSize.width * scaleFactor;
CGSize newSize = CGSizeMake(newWidth, newHeight);
NSLog(@"convertedImageSize : %@", NSStringFromCGSize(newSize));
return newSize;
}
这将创建具有特定高度的图像并保持其纵横比。