日记

首页 » 归档 » 日记 » 利用预加载让分页加载不再繁琐之单个分页讲解-ios学习从入门到精通尽在姬长信

利用预加载让分页加载不再繁琐之单个分页讲解-ios学习从入门到精通尽在姬长信

分享最热门的资讯

原文

大概是项目里太多的分页加载数据,所以一个简单、快捷、高效分页加载会使你那么的愉悦.

大概就是这么丝滑

yun_pdlist_preload.gif

github链接:JSLoadMoreService

用法讲解

属性预览

NSObject+LoadMoreService.h/**

UITableView+Preload.h

如何调用

建一个viewModel类

这里处理数据的逻辑,所以写了方法

VC调用:

整个方法:

tableview里调用预加载

绘制cell代理里调用,根据你的需求是row or section

配置tableview的上拉刷新和预加载:

至此,流程就done了

内部方法实现步骤

NSObject+LoadMoreService.m

先用runtime associate property

分页请求的base Method,

需要你配置的地方都有warning标识着:

此方法统一处理一些操作,比如:刷新remove,转model数组,记录是否加载完,记录当前请求的indexpath数组(为了是能调用insertRowsAtIndexPath:或者是insertSections:,而不用reloadData)

判断是否满足预加载的条件:

获取当前分页的所得indexpaths数组:

UITableView+Preload.m

给tableview扩展些属性以及方法

统一给tableview设置头部刷新

结束刷新

判断当前index是否可以出发预加载

是否达到预加载的条件

依赖的三方库有:AFNetworking、ReactiveObjC、YYModel、MJRefresh

其实思路很简单,runtime扩展所需要的属性和方法,然后有机的结合调用,如果你真的看懂了,其实真的很方便,当然如果你有更好的建议都可以github issue我,共同学习共同进步~

ios学习从入门到精通尽在姬长信

(0)

本文由 姬長信 创作,文章地址:https://blog.isoyu.com/archives/20266.html
采用知识共享署名4.0 国际许可协议进行许可。除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为:8月 16, 2017 at 09:17 下午

热评文章