簡體   English   中英

如何相對於原始圖像尺寸比例設置UIimageview寬度

[英]how to set UIimageview width with respect to the original image size ratio

在我的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.

最后,圖像視圖應位於視圖中心

如何實現

有兩種方法可以實現此目的。 最簡單的方法是在Interface Builder中將圖像視圖上的縮放模式設置為Aspect Fill,或者

imageView.contentMode = UIViewContentModeScaleAspectFit;

第二種方法是計算圖像的縱橫比並設置寬度。 就像是:

UIImage *myImage = [UIImage imageNamed:@"MyImage"];
float aspectRatio = myImage.size.width / myImage.size.height;
float viewWidth = 100 * aspectRatio;

好吧,這取決於您的邏輯。
您可以獲取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;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM