我在UIImageView
面临一个问题,即图片显示不正确。我正在使用我使用自定义单元格的collectionView。我已经设定了:
cell.imageView.contentMode = .scaleToFill
我希望Android中的图片看起来像这样:
答案 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
这应该可以解决问题..