JXPagingView icon indicating copy to clipboard operation
JXPagingView copied to clipboard

关于smoothviewHeader

Open escapePlan-sp opened this issue 4 years ago • 4 comments

Feature描述 请简单描述你想要的效果:? smoothviewheader是一个tableview,目前做成了tableview内部不能滑动,因为业务需要埋点监听每一个tablecell的显示,有没有好的方案

escapePlan-sp avatar Jun 30 '20 12:06 escapePlan-sp

第一个建议:可以看看这个库:https://github.com/pujiaxin33/JXPageListView 这个库顶部就不是header,而是cell。但是这个库整体原理相差比较大,就看适不适合你的需求了。

pujiaxin33 avatar Jul 13 '20 02:07 pujiaxin33

第二建议:脑补想到的方案就是,实现代理方法- (void)mainTableViewDidScroll:(UIScrollView *)scrollView。监听滚动,然后把一直取屏幕最下面的一个point,然后把这个point convert到你的header上面的tableView,然后tableView在把这个point转化为indexPath,- (nullable NSIndexPath *)indexPathForRowAtPoint:(CGPoint)point;

这个之间的转化你的多调试一下了。

pujiaxin33 avatar Jul 13 '20 02:07 pujiaxin33

JXPageListView不支持延续滑动。smoothview在header是巨大的tableview时不能复用也不是太合适。目前我的方案是 在tableview(禁止滑动)下层放置一个uiscrollview 将scrollview的pangesture手势传递给self.view tableview的滑动全部靠scrollview来驱动。你可以看下淘宝,京东,考拉的细节,当滑动触摸点在pinheader上的时候,下面的视图会跟着滑动,通过这个细节说明他们也是通过手势驱动实现的,其中个人猜测京东还做了加速计使得滑动减速。而转转不能通过pinheader实现驱动下面视图 可能跟你的smoothview原理类似。

escapePlan-sp avatar Jul 25 '20 01:07 escapePlan-sp

感谢分享这么多不同方案,基于JXPagerSmoothView的方案,目前只能这样了。如果你能自己兼容处理,那就最好了。

pujiaxin33 avatar Jul 27 '20 01:07 pujiaxin33