如何解决在 UITableViewCell 中以编程方式添加的约束的奇怪行为 |斯威夫特
我有一个 tableViewCell
,我正在以编程方式为其提供约束。我在单元格内只有一个 ImageView
。现在我没有给单元格的 contentView
一个固定的高度,而是给 top
& bottom
imageView top contentView
以便单元格高度随着 imageView 的增加而增加高度。
messagingPersonProfilePicture.leadingAnchor.constraint(equalTo: self.leadingAnchor),messagingPersonProfilePicture.topAnchor.constraint(equalTo: self.topAnchor,constant: 15),messagingPersonProfilePicture.widthAnchor.constraint(equalToConstant: 50),messagingPersonProfilePicture.heightAnchor.constraint(equalToConstant: 50),messagingPersonProfilePicture.bottomAnchor.constraint(equalTo: self.bottomAnchor,constant: -15),
现在,给出这些约束,程序正在打破这些约束,告诉我以下内容:
"<0x6000034a4e60 v: names:><0x6000034a4f00 uiimageview:0x7fa7f6605640.height="="><0x6000034a4f50 uiimageview:0x7fa7f6605640.bottom="=" paigham.messagestableviewcell:0x7fa7f7809c00><0x600003494000 paigham.messagestableviewcell:0x7fa7f7809c00>
将尝试通过打破约束来恢复<0x6000034a4f00 uiimageview:0x7fa7f6605640.height="=">0x6000034a4f00>0x600003494000>0x6000034a4f50>0x6000034a4f00>0x6000034a4e60>
我认为这有点奇怪,因为单元格从其子视图中获得了正确的高度。但是一旦我将设置为
,约束就不再被打破。这背后的原因是什么?
我的:
>>>>
我的自定义:
""""
解决方法
编辑:
在您提供有关该问题的更多信息后,您的定义似乎与
默认单元格高度定义冲突。发生冲突是因为当
首次加载布局时,它将其单元格的高度设置为。这显然与您自己的约束冲突(将高度设置为顶部底部边距)。要解决此问题,您可以定义优先级较低的顶部或底部锚点。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。