多年后再重头写tableView
2019-01-16 本文已影响5人
碧玉小瑕
一个奇异的问题引发的血案:

工程中出现的问题和此一致,但迷惑性更强,迫不得已重写demo看tableView,想起上次单独写tableView问题已经是刚学iOS开发的时候了,具体问题就是控件在

设置约束后无论如何也不居中,我开始怀疑自己难道自动布局机理我还是没学透,查了很多资料都是熟悉的内容,在写了demo,用了各种方式后,包括上图的不同cell不同颜色标记,才发现一个狗血问题,自定义的分割线没有在分割线应有的地方,顿时有种想死的感觉只想自己揍自己一顿。问题发现

在初始化过程中又使用了绝对布局,而此时由于历史原因,cell默认初始高度是44,所以最终线条偏高,整个问题恰好落在我所掌握的知识架构体系陷阱中。
所以最终解决方法就是


绝对布局一定要在layoutSubviews方法中写。
另外再发现一个坑,刚开始写这个demo时发现上方一直有留白。

这又是iOS系统新坑,我也不确定从哪个版本开始
具体解决办法

实现这两个代理方法。