MJRefresh的那些坑

现在正在写一个新的项目,由于之前用过MJ所以感觉这个第三方库还是相当简便的。可是真正用最新的MJ的时候才发现竟然也有坑。
1.MJ最新的库竟然跟一年多以前的风格完全不同了,之前用的MJ还是调用performselelctor实现的header和footer两个方法大致是这个样子的。
[myTable addHeaderWithTarget:self action:@selector(headerRereshing)];
[myTable addFooterWithTarget:self action:@selector(footerRereshing)];
2.而现在竟然最新的方法是Block,万恶的Block啊,虽然Block处理代码块很方便但是也正是这个Block带来了更大的坑。Block设置header和footer的方法如下
//头部刷新
self.myTable.header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{
}];
// 马上进入刷新状态
[self.myTable.header beginRefreshing];
//底部刷新
self.myTable.footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{
}];
3.既然说到了block的坑,那得说明,否则会招到大家的口诛笔伐,其实也不算是大坑了,只是在请求的时候发现一个问题,就是为什么上下拉刷新的操作都是在主线程中的呢?
当我们把请求放入block中执行回调的时候就会发现我们的界面完全卡死,知道数据请求结束。之前一直找不到问题所在,原来是请求的问题。所以在此将请求和MJ的用法给大家分享下。处理后的代码如下
self.hotTableView.h

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值