JKRefresher 1.4

JKRefresher 1.4

Justin Kumpe维护。




  • Justin Kumpe

注意:该项目是从AMRefresher分叉的,因为原始项目不再维护。

Codacy Badge Version License Platform

JKRefresher

通过一行代码轻松实现“下拉刷新”和“无限滚动”

安装

JKRefresher可通过CocoaPods获取。要安装它,只需将以下行添加到Podfile中

pod 'JKRefresher'

将JKRefresher文件夹复制到您的项目中。

使用

添加PullToRefresh和InfiniteScrolling到任何UIScrollView非常简单

override func viewDidLoad() {
    super.viewDidLoad()

    //Adding Pull To Refresh
    tableView.am.addPullToRefresh { [unowned self] in
        //Do your heavy job.
        //modify your datasource
        //...
        self.tableView.reloadData() //or insert cells at top of tableView
        self.tableView.am.pullToRefreshView?.stopRefreshing()
    }
 
    //Adding Infinite Scrolling
    tableView.am.addInfiniteScrolling { [unowned self] in
        //Do your heavy job.
        //append to your datasource
        //...
        self.tableView.reloadData() //or insert cells at bottom of tableView
        self.tableView.am.infiniteScrollingView?.stopRefreshing()
    }
}

如果您想程序性地触发刷新(例如在viewDidAppear:中),可以这样做

tableView.am.pullToRefreshView?.trigger()

重要说明

如果您想改变ScrollView的内容内边距,请在添加pullToRefresh或infiniteScrolling之前这样做。

自定义内容

两者AMPullToRefreshViewAMInfiniteScrollingView都有公共方法

public func setCustomView(_ view: UIView, for state: AM.State)

因此您可以调用此方法并传递您想为每种状态显示的任何UIView。

许可证

JKRefresher-Fork遵循MIT许可证。有关更多信息,请参阅LICENSE文件。