Swift使用MJRefresh

1. 准备工作

使用cocoapod导入MJRefresh

platform :ios, '8.0'
use_frameworks!

target 'YourTarget' do
    pod 'MJRefresh'
end

2. �在要使用的ViewController中导入

import MJRefresh

3. 简单的使用

下拉刷新

table.mj_header = MJRefreshNormalHeader() {
    //TODO: 重新从服务器下载数据
    ...
    //reload
    self.table.reloadData()
    self.table.mj_header.endRefreshing()          
}

上拉加载

table.mj_footer = MJRefreshBackNormalFooter() {
    //TODO: 重新从服务器下载数据
    ...
    //reload
    self.table.reloadData()
    self.table.mj_footer.endRefreshing()
    //如果加载完成了,调用下面的
    //self.table.mj_footer.endRefreshingWithNoMoreData()
    //调用了上面的以后,需要重置的话,调用
    //self.table.mj_footer.resetNoMoreData()
}

使用上面的可以基本上满足大部分要求了,如果需要一些自定义的话,就不能用闭包的形式调用了。

4. 稍微高级点的�使用

e.g. 去掉刷新的时间

let mjheader = MJRefreshNormalHeader(refreshingTarget: self, refreshingAction: #selector(loadData))
mjheader?.lastUpdatedTimeLabel.isHidden = true
table.mj_header = mjheader

loadData:

//TODO: 重新从服务器下载数据
...
//reload
self.table.reloadData()
self.table.mj_header.endRefreshing()

你可能感兴趣的:(Swift使用MJRefresh)