自定义 UITableViewCell 中的 UIImageView - 显示有点扭曲的图像

UIImageView inside custom UITableViewCell - shows a little distorted image

我正在使用 UITableView 和自定义单元格来创建我自己的选择 table。 每个单元格都有自己的 UIImageView,它被固定到单元格的右侧,并且有三个约束:右尾、顶部和底部被固定到父视图的这些。 我用来显示的图像具有模板渲染样式,对于不同的屏幕分辨率(16x16、32x32 和 48x48)有 3 种不同的尺寸。

一切正常,除了一个小问题:显示的图像似乎向上移动了一或两条像素线,并且这些线被添加到图像的底部(至少看起来是这样)。 视图模式设置为 "Center",我尝试了其他模式,但所有不缩放图像的模式(我只是希望它按原样显示)都有相同的怪癖。

我尝试了所有我能想到的方法,但没有成功 - 怪癖仍然存在。在 Xcode 视图层次结构中,一切都显示得非常完美!没有怪癖!

有人见过类似的东西吗?是否有任何秘密魔法动作可以避免这种影响?我的头爆炸:(

截图如下:https://yadi.sk/d/rtTqVqcYfPJB3

在故事板中,您想将 UIImageView 模式设置为纵横比适合或纵横比填充。

Aspect Fit:在 UIImageView 中按比例调整你的图像,所以你最终可能会得到白色 space

Aspect Fill:按比例用您的图像填充 UIImageView,但您可能会有一些溢出会截断图像的一部分

您也可以通过编程方式执行此操作:

imageView.contentMode = UIViewContentModeScaleAspectFit;
imageView.contentMode = UIViewContentModeScaleAspectFill;

我已经通过一个(非常简单的)步骤解决了这个问题:添加两个空行,一行到图标的顶部,一行到图标的底部。 因此,在我的案例中,生成的图标大小为:16x18、32x34、48x50。怪癖完全消失了,但我仍然不知道这种奇怪行为的原因。