2018-06-01 masonry布局的cell tabl

2018-06-01  本文已影响0人  惊蛰_e3ce

tableviewcell是用masonry布局

图片.png 滑到底部时要求灰色条部分刚好停在相应位置 需要计算 点击 图片.png 时
1:tableview需要要产生的偏移量needOffset
2:以及tableview正常情况下的偏移量 originOffset(contentsize - tableheight);

3:将originOffset和needoffset的差值作为 tableview的contentinset的bottom
4:这时候重点是获取到contengsize
5:但是tableview的contentsize一直获取的不准确 needlayout也不行 tableview滑动过程中contentsize还会改变
没办法只能用kvo
6:但是这个界面比较特殊

图片.png 信用 认证等都是可能有可能无 我的信用假导航要求吸顶 图片.png 刷新效果要求在中间出现 而不是顶部
7:collectionview的高度 是tableview的contentinset的top 全要在数据下发后才能准确计算 bottom要计算差值 用kvo小屏(5s se等会闪退 6等不会 查不出什么原因导致) 图片.png 堆栈显示 是死循环 添加的kvo和 图片.png mjrefresh的监听offset的kvo死循环(大屏不会贼奇怪)
8:解决方法

pragma mark kvo

9:大量测试发现 oldsize和newsize相同 没变化还走kvo CGSizeEqualToSize(oldSize,newSize)这个判断很重要 只是针对现象解决 没查到原因

10:随数据源更改contentinset的时候会调用 didscrollview方法 导致抖动

上一篇 下一篇

猜你喜欢

热点阅读