NBQElasticPullToRefresh1.0

NBQElasticPullToRefresh1.0

LQButton 维护。



  • 作者
  • Danil Gontovnik

NBQElasticPullToRefresh

使用 Swift 开发的弹性下拉刷新组件

源自 DGElasticPullToRefresh

关于如何实现此弹跳效果的教程可以在这里找到。

要求

  • Xcode 11 或更高版本
  • iOS 11.0 或更高版本(可能适用于旧版本,但未进行测试)
  • ARC
  • Swift 5.0

演示

在 Xcode 中打开并运行 NBQElasticPullToRefreshExample 项目来查看 NBQElasticPullToRefresh 的实际效果。

安装

CocoaPods

pod 'NBQElasticPullToRefresh'

手动

将 DGElasticPullToRefresh 文件夹添加到您的项目中。

示例用法

// Initialize tableView
let loadingView = DGElasticPullToRefreshLoadingViewCircle()
loadingView.tintColor = UIColor(red: 78/255.0, green: 221/255.0, blue: 200/255.0, alpha: 1.0)
tableView.dg_addPullToRefreshWithActionHandler({ [weak self] () -> Void in
    // Add your logic here
    // Do not forget to call dg_stopLoading() at the end
    self?.tableView.dg_stopLoading()
}, loadingView: loadingView)
tableView.dg_setPullToRefreshFillColor(UIColor(red: 57/255.0, green: 67/255.0, blue: 89/255.0, alpha: 1.0))
tableView.dg_setPullToRefreshBackgroundColor(tableView.backgroundColor!)

记得在 ViewController 的 deinit 中移除下拉刷新。这是一个临时解决方案。

deinit {
    tableView.dg_removePullToRefresh()
}

描述

添加没有加载视图的下拉刷新

func dg_addPullToRefreshWithActionHandler(_ actionHandler: @escaping () -> Void)

添加带有加载视图的下拉刷新

func dg_addPullToRefreshWithActionHandler(_ actionHandler: @escaping () -> Void, loadingView: DGElasticPullToRefreshLoadingView?)

您可以使用内置的 DGElasticPullToRefreshLoadingViewCircle 或者通过继承 DGElasticPullToRefreshLoadingView 并实现以下方法来创建自己的视图

func setPullProgress(_ progress: CGFloat)
func startAnimating()
func stopLoading()

移除下拉刷新

func dg_removePullToRefresh()

设置自动启动加载

func dg_startLoading()

更改下拉刷新背景颜色

func dg_setPullToRefreshBackgroundColor(_ color: UIColor)

更改下拉刷新填充颜色

func dg_setPullToRefreshFillColor(_ color: UIColor)

贡献

请随时提交 pull 请求。迫不及待想看到您为下拉刷新自定义的加载视图。

联系方式

Danil Gontovnik

许可协议

MIT 许可协议 (MIT)

版权所有 (c) 2015 Danil Gontovnik

特此授予任何获得本软件及其相关文档副本(以下简称“软件”)的人免费使用软件的权利,不受任何限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本的权利,以及允许为本软件提供的人执行上述操作的权利,但须遵守以下条件

上述版权声明和本许可声明应包含在本软件的所有副本或主要部分中。

软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论这些责任是基于合同、侵权或其他原因而产生的,即使作者或版权所有者已被告知此类损害的可能性。