UIImageView忽略UITableViewCell中的AutoLayout约束

时间:2014-10-31 06:34:26

标签: ios uiimageview autolayout

使用autolayout时,我在UITableViewCell内部遇到UIImageView问题。具体来说,我想将图像与边缘(20pt)分开,具有严格的大小(50pt),所以我已经定义了这个: imageview to top =导致edgeview = 20 height = width = 50

enter image description here

我发现imageview完全忽略了它的限制(抱歉可怕的笑脸,这是谷歌图片给我的)。当然,我想要的布局会有更多内容,但无论内容是否存在,效果都是一样的。

enter image description here

项目的设置如下: 制作单一视图应用 添加表视图,连接数据源并编写样板以创建至少一个单元格 使用笔尖创建一个tableviewcell, 将tableviewcell约束的imageview添加到top / leading(10个工作,高度为20) 在imageview中设置图像,以便在运行时看到它

我觉得这应该足够了,但似乎不起作用,我错过了一些愚蠢的事情吗?为了进行比较,如果没有tableview,这个相同的设置就没有问题,imageview的行为就像预期的那样

3 个答案:

答案 0 :(得分:14)

事实证明我错过了保持Anna版本工作的一步,我已经将UIImageView与一个名为imageView的属性连接起来(覆盖了UITableViewCell的默认属性),显然超类中的约束比我添加的更强。 / p>

答案 1 :(得分:1)

我自己无法完成这项任务,但我认为如果你在这里尝试一些事情,你会得到它:

Using Auto Layout in UITableView for dynamic cell layouts & variable row heights

答案 2 :(得分:0)

我认为它不会忽略它。你的设置是正确的。 您只需要停止绘制外部图像视图。 在ImageView上检查:剪辑子视图 - >启用。选择好的查看填充模式:缩放到填充或纵横比。