繁体   English   中英

如何使大图像适合小图像视图

[英]How to make fit a larger image into the small image view

我有固定大小的图像视图。 但是我想在不拉伸的情况下将各种尺寸的图像放入其中。

我试过了

在方法resizeImage中,我传递了我选择的图像和UIImageView的大小。

 func resizeImage(image: UIImage, size: CGSize) -> UIImage {

        UIGraphicsBeginImageContext(size)
        image.drawInRect(CGRectMake(0, 0, size.width, size.height))
        let newImage = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()

        return newImage
    }

但这不起作用,它仍在返回拉伸的图像。

请让我知道什么是正确的解决方案。

谢谢

我认为您正在寻找的是UIImageViewcontentMode属性。 像这样:

myImageView.contentMode = .ScaleAspectFit

此值将确保在设置视图的图像时,图像将尽可能多地填充视图而不会拉伸图像。 您也可以使用.ScaleAspectFill完全填充视图,但是图像将被裁剪。

只要这样做:

imageView.contentMode = .ScaleAspectFill

当您这样做时,会发生两件事:

  1. 图像视图中的图像保持正确的宽高比(即未拉伸),
  2. 图像完全充满了图像视图。 如果需要,将裁切图像的中心部分。 例如,如果您的图像视图是正方形,并且图像是矩形,则图像将被裁剪为正方形。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM