在我的iphone应用程序中,我需要在图像视图中设置图像。
图片视图高度始终为100像素。
we need to set the width of the image view with respect to the original image scale ratio.
即假设图像宽度X高度 300x400(原始)(4x3)
我们显示的图片视图图片尺寸为 75X100
图像宽度X高度 512x512(原始)(1x1)
我们显示的图片视图图片尺寸为 100X100
图像宽度X高度 128 x 256(原始)(1x2)
我们显示的图片视图图片尺寸为 50X100
in all those cases image view height 100pixel should be same, but the width need to varie with respect to the image ratio.
最后图片视图应位于视图的中心
如何实现
答案 0 :(得分:5)
有几种方法可以实现这一目标。最简单的方法是将图像视图上的缩放模式设置为Aspect Fill in Interface Builder,或
imageView.contentMode = UIViewContentModeScaleAspectFit;
第二种方法是计算图像的纵横比并设置宽度。类似的东西:
UIImage *myImage = [UIImage imageNamed:@"MyImage"];
float aspectRatio = myImage.size.width / myImage.size.height;
float viewWidth = 100 * aspectRatio;
答案 1 :(得分:0)
这取决于你的逻辑。
您可以获得UIImage
高度和宽度。
UIImage *image = [UIImage imageNamed:@"anyImage.png"];
float imageHeight = image.size.height;
float imageWidth = image.size.width;
之后你可以计算imageViewWidth-。
根据您的要求 -
float value = imageHeight/100.0;
float iV_Width = imageWidth/value;