选择后 UITableViewCell 内容移动

Posted

技术标签:

【中文标题】选择后 UITableViewCell 内容移动【英文标题】:UITableViewCell content shifting after selection 【发布时间】:2014-05-02 04:08:25 【问题描述】:

我有一个表格视图,其中每个单元格在标签和详细标签的左侧都有一个图像,如下所示:

它的渲染就像第一次加载 tableview 时应该的那样,但是如果我单击单元格导航到不同的视图然后返回到 table view 图像会移动以覆盖标签的一部分,如下所示:

更改发生在 tableview 出现后大约一秒钟,并且仅发生在先前选择的单元格上。有谁知道是什么原因造成的?

【问题讨论】:

我之前也遇到过同样的问题。您是否使用自动布局? 自动布局已启用,但我没有为此视图设置任何约束 在我的情况下,自动布局被禁用,并为所有视图提供了左侧和顶部遮罩,然后是其工作时间 关闭自动布局可修复移位,但现在图像视图会扩展以始终覆盖图像 保留自动布局,但为您的图像视图提供对单元格左侧、centerY、宽度和高度的显式约束。 【参考方案1】:

我遇到了同样的问题。我将自定义 UIImageView 的名称设置为 imageView,现在我将其名称更改为 mImageView 并修复。

也许您应该重命名您的 imageView @IBOutlet 名称。

使用不正确 - 无法正常工作

@IBOutlet var imageView: UIImageView!

正确使用

@IBOutlet var mImageView: UIImageView!

很奇怪的问题

【讨论】:

【参考方案2】:

这可能不是最好的答案,但它对我有用。最终我只是删除了单元格中的所有子视图并阅读它们。它现在可以正常工作,而不必弄乱约束。我不确定问题的原因是什么。

【讨论】:

不知是否与此有关:***.com/questions/11681273/… @AdamJack 它是给我的,由于某种原因,我的图像视图有两个绑定而不是 1,我只是删除了绑定并创建了一个新的绑定,并且它有效!感谢您的链接

以上是关于选择后 UITableViewCell 内容移动的主要内容,如果未能解决你的问题,请参考以下文章

UITableViewCell textLabel 在选择时改变位置

UITableViewCell 内容在滚动时移动其位置

重新排序/移动 UITableViewCell 但向后移动

iOS UITableViewCell 内容在第一次滚动时移动

UITableViewCell 在编辑模式下移动时显示两个不同的项目

删除时的 UITableViewCell 不会移动 UITableViewCell 的 contentView