博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
EGORefreshTableHeaderView学习
阅读量:6946 次
发布时间:2019-06-27

本文共 2649 字,大约阅读时间需要 8 分钟。

1、下载EGORefreshTableHeaderView开源框架。

2、往应用中添加EGORefreshTableHeaderView.h文件、EGORefreshTableHeaderView.m文件、Resource目录,并且导入QuartzCore.framework

3、添加代码

 往tableview对应的类的头文件中添加如下代码 EGORefreshTableHeaderView *_refreshHeaderView;

BOOL _reloading;            - (void)reloadTableViewDataSource;      - (void)doneLoadingTableViewData;

 

 往viewDidLoad函数里添加如下代码

if (_refreshHeaderView == nil) {                            EGORefreshTableHeaderView *view = [[EGORefreshTableHeaderView alloc] initWithFrame:CGRectMake(0.0f, 0.0f - self.tableView.bounds.size.height, self.view.frame.size.width, self.tableView.bounds.size.height)];              view.delegate = self;              [self.tableView addSubview:view];              _refreshHeaderView = view;              [view release];                        }                    //  update the last update date          [_refreshHeaderView refreshLastUpdatedDate];

 

  再添加一些事件函数

#pragma mark -      #pragma mark Data Source Loading / Reloading Methods            - (void)reloadTableViewDataSource{                    //  should be calling your tableviews data source model to reload          //  put here just for demo          _reloading = YES;                }            - (void)doneLoadingTableViewData{                    //  model should call this when its done loading          _reloading = NO;          [_refreshHeaderView egoRefreshScrollViewDataSourceDidFinishedLoading:self.tableView];                }            #pragma mark -      #pragma mark UIScrollViewDelegate Methods            - (void)scrollViewDidScroll:(UIScrollView *)scrollView{                    [_refreshHeaderView egoRefreshScrollViewDidScroll:scrollView];                }            - (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{                    [_refreshHeaderView egoRefreshScrollViewDidEndDragging:scrollView];                }            #pragma mark -      #pragma mark EGORefreshTableHeaderDelegate Methods            - (void)egoRefreshTableHeaderDidTriggerRefresh:(EGORefreshTableHeaderView*)view{                    [self reloadTableViewDataSource];          [self performSelector:@selector(doneLoadingTableViewData) withObject:nil afterDelay:3.0];                }            - (BOOL)egoRefreshTableHeaderDataSourceIsLoading:(EGORefreshTableHeaderView*)view{                    return _reloading; // should return if data source model is reloading                }            - (NSDate*)egoRefreshTableHeaderDataSourceLastUpdated:(EGORefreshTableHeaderView*)view{                    return [NSDate date]; // should return date data source was last changed                }

 

 最后,自己配置数据源进行测试。

转载地址:http://ejenl.baihongyu.com/

你可能感兴趣的文章
Storm-源码分析- Storm中Zookeeper的使用
查看>>
《Android 应用案例开发大全(第3版)》——导读
查看>>
Redis开发与运维. 2.2 字符串
查看>>
中化集团牵手阿里云拥抱互联网+ 打造领先的化工行业B2B垂直电商
查看>>
《C++面向对象高效编程(第2版)》——4.7 对象相等的语义
查看>>
《贝叶斯思维:统计建模的Python学习法》一1.7 Monty Hall难题
查看>>
《Kafka官方文档》设计(一)
查看>>
Android之.so文件奇巧淫技
查看>>
判断ftp是否登录成功
查看>>
双研究员带你了解数据库技术现状,及阿里云为什么要推出HBase
查看>>
乱码的艺术
查看>>
倒计时2天!杭州云栖大会八大亮点不容错过
查看>>
大数据助力物流透明,不只为了你的快递
查看>>
tee指令的妙用
查看>>
前端相关校验
查看>>
PostgreSQL 在路上的特性 - 远离触发器, 拥抱内置分区
查看>>
如何利用Photoshop扣取图片上的字体(一)
查看>>
jsp fmt标签详解
查看>>
Springmvc案例1----基于spring2.5的采用xml配置
查看>>
创建自定义数据源
查看>>