关于- tableView:cellForRowAtIndexPath:里cell的frame问题

来源:互联网 发布:中国税务网络大学登录 编辑:程序博客网 时间:2024/05/19 10:35

在使用自定义cell或直接在- tableView:cellForRowAtIndexPath:方法中直接布局,不要直接使用cell的frame,cell的frame,根据我的demo测试,第一次加载cell时,cell的高度都是为系统默认的44,在后面还会复用之前的cell的frame.

所以在动态加载cell且高度变化时,最好使用你计算的高度给cell赋值,这样那些依据cell.frame的控件位置才不会出错.或者在布局控件时不依赖cell.frame,直接从上到下布局,防止直接使用cell.frame导致布局出错.

在测试demo中,我发现-tableView:heightForRowAtIndexPath:调用的次数是行数的3倍,例如uitable有3行,-tableView:heightForRowAtIndexPath:就会调用9次,不知道是什么原因造成的,有大神知道的私信我哈,不胜感谢!


0 0
原创粉丝点击