Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/95.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UIImageView纵横比适合高度_Ios_Uiimageview_Uiimage - Fatal编程技术网

Ios UIImageView纵横比适合高度

Ios UIImageView纵横比适合高度,ios,uiimageview,uiimage,Ios,Uiimageview,Uiimage,我需要根据高度设置UIImageView大小aspectfit 意味着我的要求是图像的高度应该是固定的,但图像的宽度应该根据高度而改变。我知道在UIViewContentModesScaleAspectFit中,它会自动调整宽度和高度,但是如果我需要固定高度和动态宽度,比如根据高度调整aspectfit,该怎么办 UIImage *originalImage = [UIImage imageNamed:@"image.png"]; double width = originalImage.siz

我需要根据高度设置UIImageView大小aspectfit

意味着我的要求是图像的高度应该是固定的,但图像的宽度应该根据高度而改变。我知道在UIViewContentModesScaleAspectFit中,它会自动调整宽度和高度,但是如果我需要固定高度和动态宽度,比如根据高度调整aspectfit,该怎么办

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;
这将创建具有特定高度的图像,并保持其纵横比

这将创建具有特定高度的图像,并保持其纵横比

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

}