自定义UITableViewCell内的UIImageView - 显示一个有点扭曲的图像

时间:2015-03-19 14:57:39

标签: ios objective-c uitableview uiimageview

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

除了一个小怪癖之外,一切都运行得很好:显示的图像似乎向上移动了一两条像素线,这些线条被添加到图像的底部(至少它看起来像这样)。 视图模式设置为"中心",我尝试了其他模式,但所有不缩放图像的模式(我只是希望它按原样显示)具有相同的怪癖。

我尝试了我能想到的一切,但没有成功 - 怪癖仍在这里。在Xcode视图层次结构中,一切都显示完美!没有怪癖!

有没有人见过类似的东西?是否有任何秘密的魔法行动来避免这种影响?我的头爆炸了:(

以下是截图:https://yadi.sk/d/rtTqVqcYfPJB3

2 个答案:

答案 0 :(得分:0)

在故事板中,您希望将UIImageView模式设置为宽高比适合或宽高比填充。

Aspect Fit:在UIImageView中按比例调整图像,以便最终得到空白

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

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

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

答案 1 :(得分:0)

我已经通过一个(非常简单的)步骤修正了怪癖:通过添加两个空白行,一行到顶部,一行到图标的底部。 因此,在我的情况下产生图标大小:16x18,32x34,48x50。怪癖完全消失了,但这种奇怪行为的原因对我来说仍然是未知的。