MJsearch()finished_successfullyMJRefreshRefresh上OC拉上刷新拉组件刷新功能finished_successfully

上拉刷新的交互体验,iOS 开发里用得挺频繁的。MJRefresh这个库算是老牌工具了,写 OC 的朋友应该都不陌生,用起来又快又稳,基本一行代码就能上手,响应也快,扩展性也不错,想怎么自定义都能搞。

MJRefresh 的上拉刷新功能,适合做分页加载。像那种一口气加载一大堆内容的界面,用这个来做懒加载,用户体验提升。它不仅支持UITableView,对UICollectionView也完全 OK,兼容性还挺强。

安装的话,最就是用CocoaPods,加一句pod 'MJRefresh',跑个pod install就能用了。你要是喜欢手动导入源码,也是没问题的。

基本使用也简单。下拉刷新的话,用addHeaderWithRefreshingBlock:,上拉加载就用addFooterWithRefreshingTarget:refreshingAction:,对应写好刷新逻辑就行:

[tableView addFooterWithRefreshingTarget:self refreshingAction:@selector(loadMoreData)];

自定义动画也挺有趣,比如你想搞个 GIF 动画,只要继承MJRefreshGifHeader重写startAnimating方法就行。样式想怎么玩就怎么玩,适配自家产品的设计也方便。

它的状态提示也人性化,像“正在刷新”、“没有更多数据”这些都会自动更新状态,你也可以监听state属性来自定义 UI。

如果你打算优化性能,它也不会让你失望——刷新没触发时动画会暂停,真正刷新时再启动,不卡顿,效率还不错。

嗯,如果你在做列表加载相关的功能,MJRefresh真的蛮值得一试的。想省事就走默认方案,要炫一点的交互也能搞得挺花的。如果你是 Swift 党,也可以看看它的Swift 版

zip 文件大小:5.33MB