繁体   English   中英

UITableView分隔符在错误的位置

[英]UITableView separator at wrong position

选择时,我更改了UITableViewCell的高度(从笔尖加载)。
但是,当我这样做时,分隔线处于错误的位置。

在此处输入图片说明

在屏幕截图中,第一行被选中,因此比其他行大。
从分隔符位置看,所选单元之后的单元看起来像是大单元。 第二个单元“具有”第一个单元应具有的大小。

要更改高度,我将选定的索引路径保存在tableView:didSelectRowAtIndexPath: ,并在tableView:heightForRowAtIndexPath:进行比较。 如果索引路径相同,则返回增加的高度。 在某些NSLog的帮助下,我确保返回了正确的高度。
如果我要调整错误的单元格大小,则该单元格的视图将重叠,这不会发生。

如果单击第一个单元格的第Line 3 ,则会触发tableView:didSelectRowAtIndexPath: :,并且indexpath是第一个单元格的索引路径。 因此,我认为高度是正确的,并且tableview在错误的位置绘制了分隔符。


有人知道我做错了什么吗?
有什么办法吗? 还是应该向苹果提交另一个错误?


编辑:如果我不重用我的单元格,它将按预期工作。

原来,我已经为UITableViewCell关闭了“自动调整子视图”。

如果我打开该选项,它将按预期工作。

我有一个类似的问题。 就我而言,我正在使用layoutSubviews在单元格上进行自定义布局。 分隔符的位置错误,并且附件视图的布局也不正确。

就我而言,问题是无法调用[super layoutSubviews]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM