今日项目中用到MJRefresh这个第三方 的刷新库,但是遇到一个比较尴尬的问题就是,只能刷新一次,经过多方查询,终于知道原因现将代码贴出共同学习进步
我用的是block方法
__weak typeof(self) weakSelf = self;
self.tableView.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{
//构造数据
[weakSelf creatData];
//重置刷新状态
[weakSelf.tableView.mj_footer setState:MJRefreshStateIdle];
}];
其中导致不再上拉加载的原因就是 刷新状态我们重置即可 看库中定义了一个枚举来标识不同状态
/** 刷新控件的状态 */
typedef NS_ENUM(NSInteger, MJRefreshState) {
/** 普通闲置状态 */
MJRefreshStateIdle = 1,
/** 松开就可以进行刷新的状态 */
MJRefreshStatePulling,
/** 正在刷新中的状态 */
MJRefreshStateRefreshing,
/** 即将刷新的状态 */
MJRefreshStateWillRefresh,
/** 所有数据加载完毕,没有更多的数据了 */
MJRefreshStateNoMoreData
};
所以各位可以根据不同情况处理刷新