如何管理UIImageView内容模式?

Dip*_*ara 45 iphone uiimageview ipad ios

我有一个UIImageView有一些固定的矩形.但我的图像尺寸不固定.我想根据UIImageView的rect大小显示图像.无论图像的分辨率是大还是大,它都必须根据UIImageView的大小固定显示.我很困惑使用以下资产.

UIViewContentModeScaleToFill,
UIViewContentModeScaleAspectFit,
UIViewContentModeScaleAspectFill,
UIViewContentModeRedraw
Run Code Online (Sandbox Code Playgroud)

在autoresize mask中设置什么?他们的表现如何?

sag*_*l89 89

请尝试此代码,希望它能为您服务.

设置UIImageView contentModeUIViewContentModeScaleAspectFill如下:

imageView.contentMode = UIViewContentModeScaleAspectFill;
Run Code Online (Sandbox Code Playgroud)

设置UIImageView的autoresizingMask如下:

imageView.autoresizingMask =   
    ( UIViewAutoresizingFlexibleBottomMargin
    | UIViewAutoresizingFlexibleHeight
    | UIViewAutoresizingFlexibleLeftMargin
    | UIViewAutoresizingFlexibleRightMargin
    | UIViewAutoresizingFlexibleTopMargin
    | UIViewAutoresizingFlexibleWidth );
Run Code Online (Sandbox Code Playgroud)

  • 我还把clipsToBound = YES; (2认同)

Nir*_*tel 1

如果你想UIImageView根据比例调整大小,那么你必须将其模式设置为UIViewContentModeScaleAspectFit

 yourimage.contentMode=UIViewContentModeScaleAspectFit;
Run Code Online (Sandbox Code Playgroud)

让我知道它是否有效!

快乐编码。