RefreshKit
介绍
用于 UIScrollView 的刷新组件,由 Swift 拖拽组件编写,简单易用和扩展
功能
1. 默认头部和尾部。
2. 动画头部(Gif,APNG)。
3. 快速加载尾部刷新。
扩展
1.Lottie
2.自定义头部和尾部
示例
更多功能请打开 Example/RefreshKit.xcworkspace
1. 默认头部和底部
self.tableView.refresh.header = RefreshDefaultHeader.make {
DispatchQueue.main.asyncAfter(deadline: .now() + 1.5, execute: {
self.count = 10
self.tableView.reloadData()
self.tableView.refresh.header?.stopRefresh()
self.tableView.refresh.footer?.resetNoMoreData()
})
}
self.tableView.refresh.footer = RefreshDefaultFooter.make {
if self.count >= 20 {
DispatchQueue.main.asyncAfter(deadline: .now() + 1.5, execute: {
self.tableView.reloadData()
self.tableView.refresh.footer?.noMoreData()
})
} else {
DispatchQueue.main.asyncAfter(deadline: .now() + 1.5, execute: {
self.count += 10
print("..............")
self.tableView.reloadData()
self.tableView.refresh.footer?.stopRefresh()
})
}
}
2. 动画头部
self.tableView.refresh.header = RefreshAnimateHeader.make(path) {
DispatchQueue.main.asyncAfter(deadline: .now() + 1.5, execute: {
self.count = 10
self.tableView.reloadData()
self.tableView.refresh.header?.stopRefresh()
self.tableView.refresh.footer?.resetNoMoreData()
})
}
3. 快速加载底部
self.tableView.refresh.footer = RefreshFastFooter.makeFastFooter {
if self.count >= 200 {
DispatchQueue.main.asyncAfter(deadline: .now() + 0.2, execute: {
self.tableView.reloadData()
self.tableView.refresh.footer?.noMoreData()
})
} else {
DispatchQueue.main.asyncAfter(deadline: .now() + 0.2, execute: {
self.count += 10
self.tableView.reloadData()
self.tableView.refresh.footer?.stopRefresh()
})
}
}
需求
安装
RefreshKit 可通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile 中
pod 'RefreshKit'
作者
czqasngit,[email protected]
许可证
RefreshKit 提供在 MIT 许可下。更多详情请参阅 LICENSE 文件。