测试已测试 | ✗ |
Lang语言 | SwiftSwift |
许可证 | MIT |
Released最新发布 | 2016 年 11 月 |
SwiftSwift 版本 | 3.0 |
SPM支持 SPM | ✗ |
由 iCodesign 维护。
ICSPullToRefresh-Swift 是 SVPullToRefresh 的 Swift 版本,为 UIScrollView
提供下拉刷新和无限滚动功能。
嵌入式框架需要至少 iOS 8 的最小部署目标。
您还可以通过源代码直接集成 ICSPullToRefresh
。克隆仓库,并将 ICSPullToRefresh.swift
和 ICSInfiniteScrolling.swift
拷贝到您的项目中。
UIScrollView.addPullToRefreshHandler(() -> ())
开始/停止动画
UIScrollView.pullToRefreshView?.startAnimating()
UIScrollView.pullToRefreshView?.stopAnimating()
手动触发
UIScrollView.triggerPullToRefresh()
隐藏下拉刷新
UIScrollView.setShowsPullToRefresh(Bool)
由于 iOS 7 之后,iOS 将
automaticallyAdjustsScrollViewInsets
带到嵌套在UINavigationController
或UITabBarController
中的UIScrollView
,这会在viewDidLoad
到viewDidAppear
之间更改UIScrollView
的contentInset
,因此您必须将addPullToRefreshHandler
放在或之后viewDidAppear
示例
tableView.addPullToRefreshHandler {
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), { () -> Void in
// do something in the background
dispatch_async(dispatch_get_main_queue(), { () -> Void in
self.tableView.pullToRefreshView?.stopAnimating()
})
})
}
UIScrollView.addInfiniteScrollingWithHandler(() -> ())
开始/停止动画
UIScrollView.infiniteScrollingView?.startAnimating()
UIScrollView.infiniteScrollingView?.stopAnimating()
手动触发
UIScrollView.triggerInfiniteScrolling()
隐藏无限滚动
UIScrollView.setShowsInfiniteScrolling(Bool)
由于 iOS 7 之后,iOS 将
automaticallyAdjustsScrollViewInsets
带到嵌套在UINavigationController
或UITabBarController
中的UIScrollView
,这会在viewDidLoad
到viewDidAppear
之间更改UIScrollView
的contentInset
,因此您必须将addInfiniteScrollingWithHandler
放在或之后viewDidAppear
示例
tableView.addInfiniteScrollingWithActionHandler {
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), { () -> Void in
// do something in the background
dispatch_async(dispatch_get_main_queue(), { [unowned self] in
self.tableView.reloadData()
self.tableView.infiniteScrollingView?.stopAnimating()
})
})
}
感谢 Sam Vermette 的 SVPullToRefresh。