图像不适合UIImageView的框架

Ven*_*enk 14 iphone objective-c uiimageview ipad ios

我正在创建UIImageView使用界面Builder.其框架尺寸为(320,67).我想在imageView上显示图像.我从网上获取图像.问题是从web获取的图像被拉伸到imageview上显示...这里是我的代码

NSData *imageData=[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.isco.com/webproductimages/appBnr/bnr1.jpg"]];
imageView.image = [UIImage imageWithData:imageData];
Run Code Online (Sandbox Code Playgroud)

谁能告诉我如何显示图像适合在imageView上显示?

mvd*_*vds 37

要么使用

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

要么

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

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

  • Swift3现在是imageView.contentMode = .scaleAspectFit或.scaleAspectFill (3认同)

Jay*_*bey 7

对于Swift:

imageView.contentMode = UIViewContentMode.ScaleAspectFit
Run Code Online (Sandbox Code Playgroud)

对于Objective-C:

 imageView.contentMode = UIViewContentModeScaleAspectFit
Run Code Online (Sandbox Code Playgroud)

ScaleAspectFit选项用于通过保持纵横比来缩放内容以适合视图的大小.视图边界的任何剩余区域都是透明的.

截图

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