图像在iOS中无法正常显示

时间:2018-01-31 07:44:20

标签: ios swift uiimageview

我在UIImageView面临一个问题,即图片显示不正确。我正在使用我使用自定义单元格的collectionView。我已经设定了:

cell.imageView.contentMode = .scaleToFill

我希望Android中的图片看起来像这样:

4 个答案:

答案 0 :(得分:1)

您需要将contentMode设置为.scaleAspectFill。这将缩放图像,以便在保持图像宽高比的同时填充整个图像视图。您当前的设置.scaleToFill会填充图像视图,但不会保留纵横比,因此图像看起来会失真。

请注意,如果图像与图像视图的宽高比不匹配,.scaleAspectFill可能会导致某些图像裁剪。您可以在Android屏幕截图中看到这种情况;第二个人的头发在第一个图像的右侧不可见。

答案 1 :(得分:1)

您应该将内容模式设置为.scaleAspectFill。它将使用图像填充图像视图,但保持其纵横比。

如果您想避免裁剪图像,可以使用.scaleAspectFit。但在这种情况下,图像视图并未完全被图像覆盖。

答案 2 :(得分:0)

使用

imageView.contentMode = UIViewContentModeScaleAspectFill;

imageView.contentMode = UIViewContentModeScaleAspectFit;

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

答案 3 :(得分:0)

首先将ImageView设置为AspectFill模式,

imageView.contentMode = .scaleAspectFill

而不是尝试通过使用来裁剪其余部分。

imageView.clipsToBounds = true

这应该可以解决问题..