UITableableview上拉下拉刷新
来源:互联网 发布:管家婆普及版数据恢复 编辑:程序博客网 时间:2024/05/16 09:26
#import "ViewController.h"
//加入引用的头文件
#import "UIView+MJExtension.h"
#import "MJRefresh.h"
staticconstCGFloat MJDuration =2.0;
@interface ViewController ()<UITableViewDelegate,UITableViewDataSource>
@property (nonatomic,strong)UITableView *tableView;
@end
@implementation ViewController
#pragma mark UITableView + 下拉刷新动画图片
- (void)example02
{
//添加动画图片的下拉刷新
// 设置回调(一旦进入刷新状态,就调用target的action,也就是调用self的loadNewData方法)
[self.tableViewaddGifHeaderWithRefreshingTarget:selfrefreshingAction:@selector(loadNewData)];
//设置普通状态的动画图片
NSMutableArray *idleImages = [NSMutableArrayarray];
for (NSUInteger i =1; i<=60; i++) {
UIImage *image = [UIImageimageNamed:[NSStringstringWithFormat:@"dropdown_anim__000%zd", i]];
[idleImagesaddObject:image];
}
[self.tableView.gifHeadersetImages:idleImagesforState:MJRefreshHeaderStateIdle];
//设置即将刷新状态的动画图片(一松开就会刷新的状态)
NSMutableArray *refreshingImages = [NSMutableArrayarray];
for (NSUInteger i =1; i<=3; i++) {
UIImage *image = [UIImageimageNamed:[NSStringstringWithFormat:@"dropdown_loading_0%zd", i]];
[refreshingImagesaddObject:image];
}
[self.tableView.gifHeadersetImages:refreshingImagesforState:MJRefreshHeaderStatePulling];
//设置正在刷新状态的动画图片
[self.tableView.gifHeadersetImages:refreshingImagesforState:MJRefreshHeaderStateRefreshing];
//在这个例子中,即将刷新和正在刷新用的是一样的动画图片
//马上进入刷新状态
[self.tableView.gifHeaderbeginRefreshing];
// 此时self.tableView.header == self.tableView.gifHeader
}
#pragma mark UITableView + 上拉刷新动画图片
- (void)example12
{
//添加动画图片的上拉刷新
// 设置回调(一旦进入刷新状态,就调用target的action,也就是调用self的loadMoreData方法)
[self.tableViewaddGifFooterWithRefreshingTarget:selfrefreshingAction:@selector(loadMoreData)];
//设置正在刷新状态的动画图片
NSMutableArray *refreshingImages = [NSMutableArrayarray];
for (NSUInteger i =1; i<=3; i++) {
UIImage *image = [UIImageimageNamed:[NSStringstringWithFormat:@"dropdown_loading_0%zd", i]];//加载的时候图片
[refreshingImagesaddObject:image];
}
self.tableView.gifFooter.refreshingImages = refreshingImages;
// 此时self.tableView.footer == self.tableView.gifFooter
}
#pragma mark - 数据处理相关
#pragma mark 下拉刷新数据
- (void)loadNewData
{
// 1.模拟2秒后刷新表格UI(真实开发中,可以移除这段gcd代码)
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(MJDuration * NSEC_PER_SEC)),dispatch_get_main_queue(), ^{
//刷新表格
[self.tableViewreloadData];
//拿到当前的下拉刷新控件,结束刷新状态
[self.tableView.headerendRefreshing];
});
}
#pragma mark 上拉加载更多数据
- (void)loadMoreData
{
// 1.模拟2秒后刷新表格UI(真实开发中,可以移除这段gcd代码)
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(MJDuration * NSEC_PER_SEC)),dispatch_get_main_queue(), ^{
//刷新表格
[self.tableViewreloadData];
//拿到当前的上拉刷新控件,结束刷新状态
[self.tableView.footerendRefreshing];
});
}
- (void)viewDidLoad {
[superviewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
_tableView = [[UITableViewalloc]initWithFrame:self.view.framestyle:UITableViewStylePlain];
_tableView.delegate =self;
_tableView.dataSource =self;
[self.viewaddSubview:_tableView];
[selfexample02];
[selfexample12];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return14;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
staticNSString *ID =@"cell";
UITableViewCell *cell = [tableViewdequeueReusableCellWithIdentifier:ID];
if (cell ==nil) {
cell = [[UITableViewCellalloc]initWithStyle:UITableViewCellStyleDefaultreuseIdentifier:ID];
}
cell.textLabel.text =@"你好!";;
return cell;
}
@end
//MJRefresh刷新控件的链接
https://github.com/CoderMJLee/MJRefresh.git
- UITableableview上拉下拉刷新
- ListView上拉下拉刷新
- UITableView上拉下拉刷新
- 上拉下拉刷新XListView
- 上拉下拉刷新(1)
- 上拉下拉刷新数据
- PulltoRefresh上拉下拉刷新
- 上拉下拉刷新类
- XListview 上拉下拉刷新
- PullToRefreshListView上拉下拉刷新
- Qml上拉下拉刷新
- 快速集成上拉下拉刷新
- listview 上拉下拉刷新Demo
- ios 自定义上拉下拉刷新
- IOS上拉下拉刷新之详解
- 最终标准的上拉下拉刷新
- SwipeRefreshLayout实现上拉下拉刷新
- html5上拉下拉刷新分页实现
- E - Children of the Candy Corn`特别DFS+BFS+DFS陷阱
- F - Catch That Cow-BFS-只计次不求路径
- G - Dungeon MasterBFS+填路
- java IO详解看完你就懂了耐心点。
- Node入门之一
- UITableableview上拉下拉刷新
- 迷宫BFS+递归回溯找爹打印路径
- hihoCoder 二分·二分查找之k小数
- HDU 4114 Disney's FastPass(状压dp)
- 迷宫DFS
- 路由事件初级案例
- poj 3080 Blue Jeans (多串最长公共子串 暴力)
- IIS7.5 错误代码0x8007007e HTTP 错误 500.19
- Androidapi.JNI.Net.Wifi